[英]How to set such soap header (php)
我已收到此示例进行肥皂查询:
POST https://000.0.0.0:8181/wsForWeb/webService HTTP/1.1
Accept-Encoding: gzip,deflate
Content-Type: text/xml;charset=UTF-8
SOAPAction: ""
Authorization: Basic username:password
Content-Length: 293
Host: 000.00.00.00:8181
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.1.1 (java 1.5)
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://ws/">
<soapenv:Header/>
<soapenv:Body>
....
</soapenv:Body>
</soapenv:Envelope>
如何用肥皂发送这些标头? 通常我会用
$client = new soapClient(...);
$clHeader = new SoapHeader(..., array('
'authorization' => 'Basic .......',
'Host' => '000.000.00.00.0',
));
$client -> __setSoapHeaders($clHeader);
但是我收到验证错误。 我究竟做错了什么?
您没有在soap Header中传递登录凭据
$params = array(
"login" => "username",
"password" => "password",
);
$client = new SoapClient($wsdlURL, $params);
其中$ wsdlURL是带有Soap调用所在服务器的URL的变量。
这是使用基本身份验证实现Soap Client的最常见方法
参考PHP官方文档: 链接。
希望这会有所帮助
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.