在SOAPUI中的请求如下:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ser="http://server.webservice.service.mgw.mascloud.umpay.com/"> <soapenv:Header/> <soapenv:Body> <ser:sendSms> <!--Optional:--> <arg0><![CDATA[<WsSubmitReq> <apId>decder</apId> <sign>DWItALe3A</sign> <addSerial/> </WsSubmitReq>]]> </arg0> </ser:sendSms> </soapenv:Body> </soapenv:Envelope>
PHP请求代码如下:
$soap = new SoapClient("http://112.35.10.201:1999/smsservice?wsdl"); $requestMethod ="sendSms";$result2 = $soap->$requestMethod(array('arg0'=>'<!<CDATA[<WsSubmitReq><apId>decder</apId><sign>DWItALe3A</sign><addSerial/></WsSubmitReq>]]>'));
返回提示出错。
原来CDATA标签是SOAPUI自己加上去的表示是XML数据。
PHP不需要加这个标签
$result2 = $soap->$requestMethod(array('arg0'=>'<WsSubmitReq><apId>decder</apId><sign>DWItALe3A</sign><addSerial/><mac>cf19a48af73580d98124e1cc9aec5508</mac></WsSubmitReq>'));
问题解决 。