Java使用httprequest來訪問WebService2

 

	import java.io.*;
	import java.net.*;

public	class QQOperator {
	    public static void main(String[] args) throws Exception {
	        String urlString = "http://www.webxml.com.cn/webservices/qqOnlineWebService.asmx";
	        String xmlFile = "<?xml version=\"1.0\" encoding=\"utf-8\"?>" +
	        		"<soap12:Envelope xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:soap12=\"http://www.w3.org/2003/05/soap-envelope\"><soap12:Body>"+
    "<qqCheckOnline xmlns=\"http://WebXml.com.cn/\">"+
      "<qqCode>8698053</qqCode>"+
    "</qqCheckOnline>"+
  "</soap12:Body>"+
"</soap12:Envelope>";
	        String soapActionString = "http://WebXml.com.cn/qqCheckOnline";

	        URL url = new URL(urlString);

	        HttpURLConnection httpConn = (HttpURLConnection) url.openConnection();;
	        System.out.println("start connect..");
	        File fileToSend=new File(xmlFile);
	        byte[] buf=new byte[(int)fileToSend.length()];
	        new FileInputStream(xmlFile).read(buf);
	        httpConn.setRequestProperty( "Content-Length",String.valueOf( buf.length ) );
	        httpConn.setRequestProperty("Content-Type","text/xml; charset=utf-8");
	        httpConn.setRequestProperty("soapActionString",soapActionString);
	        httpConn.setRequestMethod( "POST" );
	        httpConn.setDoOutput(true);
	        httpConn.setDoInput(true);
	        OutputStream out = httpConn.getOutputStream();
	        System.out.println("start connect 2..");
	        out.write( buf ); 
	        out.close();
	        
	        InputStreamReader isr = new InputStreamReader(httpConn.getInputStream(),"utf-8");
	        System.out.println("start connect 3..");

	        BufferedReader in = new BufferedReader(isr);
	        
	        String inputLine;
	        BufferedWriter bw=new BufferedWriter(new OutputStreamWriter(new FileOutputStream("d:/result.xml")));
	        while ((inputLine = in.readLine()) != null){
	            System.out.println(inputLine);
	            bw.write(inputLine);
	            bw.newLine();
	        }
	        bw.close();
	        in.close();
	    }
	}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章