Php paypal SoapClient不工作
我正在使用PHP的SoapClient类连接到paypal。我有很多问题:Php paypal SoapClient不工作,php,paypal,soap-client,paypal-soap,Php,Paypal,Soap Client,Paypal Soap,我正在使用PHP的SoapClient类连接到paypal。我有很多问题: 我传递给soap调用的参数是数组('returnallcurrences'=>0,'Version'=>'63.0'),但正如您在下面的请求中所看到的,63.0被放入中。我甚至没有在请求中看到returnallcurrences 在此请求中,我正在执行GetBalance命令: <?xml version="1.0" encoding="UTF-8"?> <SOAP-ENV:Envelope xmlns
数组('returnallcurrences'=>0,'Version'=>'63.0')
,但正如您在下面的请求中所看到的,63.0
被放入
中。我甚至没有在请求中看到returnallcurrencesGetBalance
命令:
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="urn:ebay:api:PayPalAPI" xmlns:ns2="urn:ebay:apis:eBLBaseComponents">
<SOAP-ENV:Header>
<ns1:RequesterCredentials>
<ns2:Credentials>
<ns2:Username>xxxx</ns2:Username>
<ns2:Password>xxx</ns2:Password>
<ns2:Signature>xxx</ns2:Signature>
</ns2:Credentials>
</ns1:RequesterCredentials>
</SOAP-ENV:Header>
<SOAP-ENV:Body>
<ns1:GetBalanceReq/>
<param1>63.0</param1>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
xxxx
xxx
xxx
63
我通过SoapClient找到了上面的请求::\uu getLastRequest()。它与paypal网站上的示例完全不同。GetBalanceReq
标记有什么作用?为什么它有*Req后缀
2.使用生产服务器和wsdl文件时,我遇到一个php错误:
SOAP-ERROR:解析WSDL:
无法从中加载
';
:应为开始标记,“首先,“ReturnAllCurrences”应为字符串,而不是整数。此外,需要将GetBalancerRequestType字段包装在GetBalancerRequest元素中,以使其正常工作。有关问题的第一部分以及有效解决方案的更多信息,请查看此处:
问题的第二部分听起来像是Paypal基础设施的暂时问题。最佳实践是不使用WSDL的本地副本,而是打开WSDL缓存,让PHP决定何时刷新它