我需要调用PHP中的SOAP 1.1 Web服务。然而,为了工作的要求之一是,我必须发送的Content-Type =应用程序/肥皂+ XML。现在,我知道这些都是差异:
我需要使用SoapClient的使用WSDL来做到这一点。但是,我怎么也找不到设置的内容类型后,我设置版本SoapClient的1.1
可能有人提供了示例或代码片断?
谢谢!
您可以在SoapClient的选项流供给方面。
$ctx_opts = array(
'http' => array(
'header' => 'Content-Type: application/soap+xml'
)
);
$ctx = stream_context_create($ctx_opts);
$soapClient = new SoapClient('your.wsdl', array('stream_context' => $ctx));
有许多当您尝试将它们放置在stream_context
被忽略的头,并且将永远不会被使用。
检查底层的C源文件SOAP / php_http.c并搜索“跳过一些预定义的头”的名单。
这是一些人报告在某些情况下的问题试图set Host
,Authorization
,Content-Type
和其他标题的原因。