使用PHP访问SOAP Web服务,需要一个空白标题

时间:2013-05-23 08:31:10

标签: php soap sap

这是我使用SoapClient PHP类生成的。

<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="urn:sap-com:document:sap:soap:functions:mc-style">
 <SOAP-ENV:Body>
  <ns1:_-bic_-nf2>
   <ETColumnDescription/>
   <ETGridData/>
   <ETMessageLog/>
   <ETRowDescription/>
   <ISVar_01xwerbet>
    <Sign>I</Sign>
    <Option>LE</Option>
    <Low>3</Low>
    <High/>
   </ISVar_01xwerbet>
  </ns1:_-bic_-nf2>
 </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

我还需要一个空白标题,看起来像<SOAP-ENV:Header/>
就在<SOAP-ENV:Body>

之前

但使用SOAPHeader执行此操作:$header = new SOAPHeader('urn:sap-com:document:sap:soap:functions:mc-style',null,null)似乎无法正常工作。尝试了一切。还有其他想法吗?

我还需要在发送请求之前删除第一行<?xml version="1.0" encoding="UTF-8"?>,我认为服务器不喜欢它,这可能吗?

如果有帮助,这适用于SAP Web服务。

提前谢谢。

1 个答案:

答案 0 :(得分:0)

有可能。只需在库中引用nusoap.php文件即可。您可以修改通常存在于变量$ headers下的标头。 我试过,它对我有用。