[英]PHP SOAP client and namespaces
我可以将以下xml文件发布到Web服务中,并且得到预期的响应ID。
<Envelope xmlns="http://www.w3.org/2003/05/soap-envelope">
<Body>
<logon xmlns="http://tempuri.org/">
<username>USRNAME</username>
<password>b5059e852207a</password>
</logon>
</Body>
</Envelope>
我现在正尝试将其转换为使用PHP SOAP客户端。 我打以下电话
$soapclient = new SoapClient('http://*********.co.uk/ws-b/WebservicesPTP.asmx?wsdl');
我可以获得功能列表:
$functions = $soapclient->__getFunctions();
但是当我尝试使用登录方法时:
$params = array('username' => 'USRNAME', 'password' => 'b5059e852207a');
$response = $soapclient->logon($params);
我根本没有任何回报。
我怀疑这与名称空间有关,但是我在信封上有两个,在登录上有两个。 我是否需要这些,如果需要,如何将它们添加到SOAP Client?
编辑:我收到以下PHP错误:
PHP Fatal error: Uncaught SoapFault exception: [soap:Server] rt.exception.RTException: Object reference not set to an instance of an object
感谢Piotr Olaszewski。 终于成功了。 问题不是命名空间,而是登录方法上缺少“会话”参数。 令人失望的是,这导致调用仅失败,因此我无法使用_getLastRequest方法。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.