根据航班信息Web service请求,WSDL网址:
http://ws.webxml.com.cn/webservices/DomesticAirline.asmx?wsdl
1.JAVA方式请求:
//XML格式的web请求封装
private static String getAirlinesCitiesRequest()
{
String strXml = "";
strXml = "<?xml version=\"1.0\" encoding=\"utf-8\"?>" +
"<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" " +
"xmlns:mk=\"http://WebXml.com.cn/\">" +
"<soapenv:Header/>" +
"<soapenv:Body>" +
"<mk:getDomesticCity>" +
"</mk:getDomesticCity>" +
"</soapenv:Body>" +
"</soapenv:Envelope>";
return strXml;
}
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import org.w3c.dom.Attr;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.NamedNodeMap;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
public class TestNew {
public static void main(String[] args) throws IOException{
//第一步:创建服务地址
URL url = new URL("http://ws.webxml.com.cn/webservices/DomesticAirline.asmx?wsdl");
//第二步:打开一个通向服务地址的连接
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
//第三步:设置参数
//3.1发送方式设置:POST必须大写
connection.setRequestMethod("POST");
//3.2设置数据格式:content-type
connection.setRequestProperty("content-type", "text/xml;charset=utf-8");
//3.3设置输入输出,因为默认新创建的connection没有读写权限,
connection.setDoInput(true);
connection.setDoOutput(true);
//---------------------------------------------------------------
//第四步:组织SOAP数据,发送请求
String soapXML = getAirlinesCitiesRequest();
OutputStream os = connection.getOutputStream();
os.write(soapXML.getBytes());
//第五步:接收服务端响应,打印
int responseCode = connection.getResponseCode();
if(200 == responseCode){
//表示服务端响应成功
//获取当前连接请求返回的数据流
InputStream is = connection.getInputStream();
InputStreamReader isr = new InputStreamReader(is);
BufferedReader br = new BufferedReader(isr);
StringBuilder sb = new StringBuilder();
String temp = null;
while(null != (temp = br.readLine())){
sb.append(temp);