如何从PHP使用WCF Web服务?

时间:2010-03-31 18:32:25

标签: .net php wcf soap

我必须使用WCF WebServices,但WSDL包含PHP也不支持的绑定。

  

SOAP-ERROR:解析WSDL:PHP-SOAP不支持传输“http://schemas.microsoft.com/soap/named-pipe

如何绕过这个问题?

2 个答案:

答案 0 :(得分:2)

您似乎正在使用net named pipe binding公开服务。这很可能不适用于php,因为它不知道如何通过命名管道讲SOAP / WS。

相反,您需要使用basic HTTP bindingWS HTTP binding来公开您的服务,然后在PHP中使用它。

答案 1 :(得分:0)

如果您可以控制WCF服务,则解决方案是从WSDL手动删除不受支持的绑定,并将WSDL保存在其他位置并使用以下命令指向它:

<system.serviceModel>
  <behaviors>
    <serviceBehaviors>
      <behavior name="test">
        <serviceMetadata 
           externalMetadataLocation="http://YourServer/Service/MyService.wsdl"/>
      </behavior>
    </serviceBehaviors>
  </behaviors>
</system.serviceModel>