流世幻羽

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

webservice远程调用

import java.io.ByteArrayOutputStream;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.URL;
 
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.HttpException;
import org.apache.commons.httpclient.methods.PostMethod;
 
public class MobileCodeService {
 
    public void httpGet(String mobile,String userID) throws Exception
    {
        //http://ws.webxml.com.cn/WebServices/MobileCodeWS.asmx/getMobileCodeInfo?mobileCode=string&userID=string 
       URL url = new URL("http://ws.webxml.com.cn/WebServices/MobileCodeWS.asmx/getMobileCodeInfo?mobileCode="+mobile+"&userID="+userID);
       HttpURLConnection conn =(HttpURLConnection)url.openConnection();
       conn.setConnectTimeout(5000);
       conn.setRequestMethod("GET");
        
       if(conn.getResponseCode()==HttpURLConnection.HTTP_OK)  //200
       {
          InputStream is= conn.getInputStream();
           
          ByteArrayOutputStream arrayOutputStream = new ByteArrayOutputStream();  //
           
          byte [] buf = new byte[1024];
          int len = -1;
          while((len = is.read(buf))!=-1)
          {
              //获取结果
              arrayOutputStream.write(buf, 0, len);
          }
           
          System.out.println("Get方式获取的数据是:"+arrayOutputStream.toString());
          arrayOutputStream.close();
          is.close();
       }
    }
     
     
    public void httpPost(String mobile,String userID) throws HttpException, IOException
    {
        //访问路径   http://ws.webxml.com.cn/WebServices/MobileCodeWS.asmx/getMobileCodeInfo
        //HttpClient访问
         
        HttpClient httpClient = new HttpClient();
        PostMethod pm = new PostMethod("http://ws.webxml.com.cn/WebServices/MobileCodeWS.asmx/getMobileCodeInfo");
         
        pm.setParameter("mobileCode", mobile);
        pm.setParameter("userID", userID);
         
        int code= httpClient.executeMethod(pm);
        System.out.println("状态码:"+code);
         
        //获取结果
        String result = pm.getResponseBodyAsString();
        System.out.println("获取到的数据是:"+result);
    }
     
    public void SOAP() throws Exception
    {
        HttpClient client = new HttpClient();
         
        PostMethod method = new PostMethod("http://ws.webxml.com.cn/WebServices/MobileCodeWS.asmx");
         
        //设置访问方法的参数
        method.setRequestBody(new FileInputStream("C:\\soap.xml"));
         
        method.setRequestHeader("Content-Type","text/xml; charset=utf-8");
         
        int code= client.executeMethod(method);
        System.out.println("状态码:"+code);
         
        //获取结果
        String result = method.getResponseBodyAsString();
        System.out.println("获取到的数据是:"+result);
    }
     
    public static void main(String[] args) throws Exception {
        MobileCodeService mcs=new MobileCodeService();
        mcs.httpGet("18524012513", "");
        //mcs.httpPost("18524012513", "");
        //mcs.SOAP();
    }
}

  

posted on 2017-09-19 20:13  流世幻羽  阅读(298)  评论(0编辑  收藏  举报