我们需要与.NET webservice url进行通信,并通过传递相应的参数从方法中获取日期。当尝试在响应中使用NUSOAP库时,我在响应节点中得到了错误。
所以我尝试了样本w3schools温度转换webservice链接并测试了它。在这样做时,我得到了相同的错误结果。我已粘贴以下代码供您参考:
$client = new nusoap_client('http://www.w3schools.com/webservices/tempconvert.asmx',false);
$soapaction = "http://tempuri.org/CelsiusToFahrenheit";
$namespace= "http://tempuri.org/";
$client->soap_defencoding = 'UTF-8';
$params = array(
'Celsius' => "122"
);
$result = $client->call('CelsiusToFahrenheit', $params,$namespace,$soapaction);
我得到的答复如下,
<?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><soap:Body><CelsiusToFahrenheitResponse xmlns="http://tempuri.org/"><CelsiusToFahrenheitResult>Error</CelsiusToFahrenheitResult></CelsiusToFahrenheitResponse></soap:Body></soap:Envelope>
您能否告诉我访问网络服务电话的错误。如果您需要任何其他详细信息,请通知我。
先谢谢,
此致
斯里尼瓦桑
答案 0 :(得分:0)
发现web服务调用在php中使用nusoap
我在下面的行中进行了更改 $ client = new nusoap_client('http://www.w3schools.com/webservices/tempconvert.asmx',false);
使用以下代码,
$client = new nusoap_client('http://www.w3schools.com/webservices/tempconvert.asmx?wsdl',true);