最近有一个项目,客户端与服务器的交互是webService方式。现将ksoap2android调用webService的方法记录如下,最后再讨论一下Http方式直接调用的方法。
以下的调用都是java代码,移植到android下不需要改动任何内容。
例子中调用的webService为http://webservice.webxml.com.cn/webservices/qqOnlineWebService.asmx?wsdl

一、使用ksoap2android方法调用 。代码如下:

二、使用Http方式调用。

Http调用WebService的时候,需要将调用的参数信息组合成为字符串,并且将其附加到Http报头中。所以,当有时候的确需要用Http方式调用的时候,可以先用ksoap调用一次,同时使用抓包工具分析请求的报头。然后再编写代码,以提高调用的成功率。注:抓包工具可以用HttpAnalyzerStdV7,比较好操作。

我在调用的时候,将参数信息写到了xml文件中,当然也可以自己构造一个字符串。这里就使用字符串的方法。

1、编写构造xml参数结构的方法:

2、编写Http方式调用的方法:

三、调用的代码:

HttpAPI类的内容:

最终调用的结果为:

soap方式返回结果:

Http方式返回结果:

两种调用方法的不同点:

soap方式返回的是结果的字符串,而Http方式返回的结果是一个xml,需要自己进行解析。项目中可根据需求选择使用哪种请求方式。

 

1
该内容对我有帮助
arrow
arrow
    全站熱搜

    戮克 發表在 痞客邦 留言(0) 人氣()