Web Service是一个基于可编程的Web应用程序,由于服务端是用Web Service开发的,如果android要调用Web Service服务来获取数据,就需要通过HttpClient发送post请求来获取,操作方法如下。
方法/步骤:
注:本文使用的是查询手机号码归属地的Web。
1、service:http://webservice.webxml.com.cn/WebServices/MobileCodeWS.asmx?wsdl。
查询的主要方法:http://webservice.webxml.com.cn/WebServices/MobileCodeWS.asmx?op=getMobileCodeInfo
2、可以看出该方法的两个传入参数的名称;
3、下面直接上代码。
01[java] view plaincopy02private void getMobileCodeInfo(){03try {04final String SERVER_URL = "http://webservice.webxml.com.cn/WebServices/MobileCodeWS.asmx/getMobileCodeInfo"; // 定义需要获取的内容来源地址05HttpPost request = new HttpPost(SERVER_URL);06List<BasicNameValuePair> params = new ArrayList();07params.add(new BasicNameValuePair("mobileCode", "136370628")); //(注意这里的号码必须大于6位)08params.add(new BasicNameValuePair("userId", ""));09request.setEntity(new UrlEncodedFormEntity(params, HTTP.UTF_8));10HttpResponse httpResponse = new DefaultHttpClient().execute(request);11if (httpResponse.getStatusLine().getStatusCode() != 404)12{13String result = EntityUtils.toString(httpResponse.getEntity());14System.out.println(result);15}16} catch (Exception e) {17Log.e("eee", ""+e);18e.printStackTrace();19}20}复制代码[java] view plaincopyprivate void getMobileCodeInfo(){try {final String SERVER_URL = "http://webservice.webxml.com.cn/WebServices/MobileCodeWS.asmx/getMobileCodeInfo"; // 定义需要获取的内容来源地址HttpPost request = new HttpPost(SERVER_URL);List<BasicNameValuePair> params = new ArrayList();params.add(new BasicNameValuePair("mobileCode", "136370628")); //(注意这里的号码必须大于6位)params.add(new BasicNameValuePair("userId", ""));request.setEntity(new UrlEncodedFormEntity(params, HTTP.UTF_8));HttpResponse httpResponse = new DefaultHttpClient().execute(request);if (httpResponse.getStatusLine().getStatusCode() != 404){String result = EntityUtils.toString(httpResponse.getEntity());System.out.println(result);}} catch (Exception e) {Log.e("eee", ""+e);e.printStackTrace();}}
通过HttpClient请求Web Service的操作方法就给大家分享到这边了,不会操作的朋友,可以参考教程操作哦!