我正在尝试实施soaprequest并使呼叫确实起作用。唯一的问题是:我不知道如何接收响应数据。我的代码如下所示:
$auth = array(
'UsernameToken' => array(
'Username' => 'xxx',
'Password' => 'yyyy'
)
);
$header = new SoapHeader('xs','Security',$auth, 0);
$client->__setSoapHeaders($header);
$client->__setLocation('http://example.com/test.php');
$params = array(
...
'trace' => 1,
'cache_wsdl' => 0
);
try {
$response = $client->getSomeData($params);
}catch(Exception $e){
echo "Exception: ".$e->getMessage();
}
print_r($response);
这导致空页面,因为$ response为空。但是调用了test.php文件(我尝试使用简单的mail()命令,每当我用soapclient调用页面时它就会发送邮件)。
所以我猜肥皂响应以某种方式发送到test.php文件 - 对吧?我怎么得到它?如果我没有设置位置,我会得到一个nullpointerexception,所以我必须这样做。我试过了
$client->__getLastResponse()
那也是空的。
我该怎么办,如何获取肥皂响应数据?任何提示将不胜感激。谢谢!