SOAP错误;尽管有参数,但缺少参数

时间:2012-11-01 11:11:18

标签: php soap

以下肥皂请求

$response = $this->client->__soapCall('Match', array('word' => 'test', 'strategy' => 'exact'));

产生错误

Uncaught SoapFault exception: [soap:Client] Parameter not specified (null)
Parameter name: word

这怎么可能?我在请求中指定了word参数,不是吗?为什么服务器不识别它?

我想要使用的服务是online dictionary webservive

1 个答案:

答案 0 :(得分:4)

通常你需要将参数包装在一个双数组中:

$response = $this->client->__soapCall('Match', array(array('word' => 'test', 'strategy' => 'exact')));

如果你

,它会读得更好
$aParams  = array('word' => 'test', 'strategy' => 'exact');
$response = $this->client->__soapCall('Match', array($aParams));

或者您可以直接调用匹配功能

$aParams  = array('word' => 'test', 'strategy' => 'exact');
$response = $this->client->Match($aParams);

或者,作为最后的手段,请使用HTTP GET选项:http://services.aonaware.com/DictService/DictService.asmx?op=Match

应该让你再次上路。