2009-12-11 150 views
2

尝试与.NET肥皂服务器交互的PHP肥皂客户端导致以下错误: [soap:Receiver]服务器无法处理请求。 ---> Base-64字符数组的长度无效。PHP肥皂客户端到.NET肥皂的错误服务器

$credentials = array(
    'RequestorUID'=> 'xxxx', 
    'RequestorPassword'=> 'xxxx' 
); 
$param = array('pmPropertyManagerID'=>'xxxx'); 
$client->GetPropertyStatus($credentials, $param); 

GetPropertyStatus两个参数,一个凭证对象 - >其正常工作方式的其它功能,仅需要凭据正确执行。第二个参数被定义为一个字符串,我试图直接输入它作为一个字符串和base64_encoded字符串(错误:要解密的数据的长度是无效的),一个数组和一个关联数组都是字符串和base64_encoded字符串,并得到错误以上。

任何帮助,将不胜感激。

+0

什么PHP客户端是否使用(如果有)来生成您的基类? – 2009-12-11 21:24:49

+0

默认的SOAP类。我知道它不是自定义或NuSOAP。 – Gabe 2009-12-11 22:22:09

回答

2

感谢您的答复,我最终去它的工作执行以下操作:

$client->GetPropertyStatus($credentials, new SoapVar('xxxx', XSD_STRING, 'xsd:string')) 

我只是在WSDL比较$client->__getLastRequest()的定义为小偏差会导致异常