用C#创建了一个WebService, 然后在PHP里访问这个Service, 当测试不带参数时,结果正常。当调用带参数的方法时,结果返回都是空。[PHP Code]
$url ="http://www.ws.cn/1/Healthgrow/Service.asmx?wsdl";
$client = new SoapClient($url,array("trace" => 1, "exception" => 0));
$result = $client->UserLogin(array('userName' => '3','password' => '222'));
echo "<pre>".print_r($result->UserLoginResult,true)."</pre>";
[/PHP Code]当我换成调用第三方提供的公用Service时:[PHP Code]
$client = new SoapClient("http://www.webxml.com.cn/webservices/qqOnlineWebService.asmx?wsdl");
$result = $client->qqCheckOnline(array('qqCode' => '123456'));//**替换QQ号
echo $result->qqCheckOnlineResult;
[/PHP Code]
同样的代码又是可以正常返回结果的。是怎么回事啊?
$url ="http://www.ws.cn/1/Healthgrow/Service.asmx?wsdl";
$client = new SoapClient($url,array("trace" => 1, "exception" => 0));
$result = $client->UserLogin(array('userName' => '3','password' => '222'));
echo "<pre>".print_r($result->UserLoginResult,true)."</pre>";
[/PHP Code]当我换成调用第三方提供的公用Service时:[PHP Code]
$client = new SoapClient("http://www.webxml.com.cn/webservices/qqOnlineWebService.asmx?wsdl");
$result = $client->qqCheckOnline(array('qqCode' => '123456'));//**替换QQ号
echo $result->qqCheckOnlineResult;
[/PHP Code]
同样的代码又是可以正常返回结果的。是怎么回事啊?
==================
你这wsdl地址访问不了
你看qq的请求格式也差不多会弄了
看soapBody里的请求格式
<qqCheckOnline xmlns="http://WebXml.com.cn/">
<qqCode>string</qqCode>
</qqCheckOnline>
在对比你正确的soapClient请求方式
$result = $client->qqCheckOnline(array('qqCode' => '123456'));
一目了然。
qq的请求示例看这里
http://www.webxml.com.cn/webservices/qqOnlineWebService.asmx?op=qqCheckOnline