如何在yii2中使用SoapClient?

时间:2015-04-30 19:50:37

标签: php yii2 xml-namespaces soap-client

询问yii2使用SoapClient的问题,谢谢。 这是一个java webservice,地址:http://122.114.18.101/MyWebServicesPort?wsdl 我想调用validateFalseInfo方法服务器。 这是服务器实际的字符串要求我提交

PFJFUVVFU1Q + PFVTRVI + Q0cyMDAwMDAxPC9VU0VSPjxQQVNTV09SRD5mNmFhNTY4NDNhOTRjNWFlNjBkNjMxNzVkZTZlZTQ4MTY3MDcxOWZlMmU2MjdiYTZjM2RmNTA5ZDkxOWZjNDI5PC9QQVNTV09SRD48Q09ORElUSU9OPjxTSlJYTT48L1NKUlhNPjxaSkhNPjIxMDEwNDE5ODUwNjAyMDA5eDwvWkpITT48L0NPTkRJVElPTj48L1JFUVVFU1Q +

问题是:我使用c#调用方法,同样提交获取是

 PFJFU1VMVD48REFUQS8 + PFNUQVRFPjEwMTwvU1RBVEU + PC9SRVNVTFQ +
在base64解密后

<RESULT><DATA/><STATE>101</STATE></RESULT>

但是当我使用php SoapClient或在yii2中使用https://github.com/mongosoft/yii2-soap-client时。返回值解密所有

<RESULT><DATA/><STATE>301</STATE></RESULT>

我不知道为什么301结果通过相同的内容获得了php。 从服务器返回的信息

  

101 =成功,301 =异常

以下是一些网络信息

php5.5.11 SoapClient网络信息

<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope 
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" 
xmlns:ns1="http://webservice.com/">
<SOAP-ENV:Body>
<ns1:validateFalseInfo/>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

c#SoapClient网络信息

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope 
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<validateFalseInfo xmlns="http://webservice.com/">
<arg0 xmlns="">PFJFUVVFU1Q+PFVTRVI+Q0cyMDAwMDAxPC9VU0VSPjxQQVNTV09SRD5mNmFhNTY4NDNhOTRjNWFlNjBkNjMxNzVkZTZlZTQ4MTY3MDcxOWZlMmU2MjdiYTZjM2RmNTA5ZDkxOWZjNDI5PC9QQVNTV09SRD48Q09ORElUSU9OPjxTSlJYTT48L1NKUlhNPjxaSkhNPjIxMDEwNDE5ODUwNjAyMDA5eDwvWkpITT48L0NPTkRJVElPTj48L1JFUVVFU1Q+</arg0>
</validateFalseInfo>
</soap:Body>
</soap:Envelope>

希望得到帮助,谢谢。

1 个答案:

答案 0 :(得分:0)

您似乎在没有任何参数的情况下调用 validateFalseInfo 方法。您应该通过调用问题来添加PHP代码。