【发布时间】:2010-03-31 18:32:25
【问题描述】:
我必须使用 WCF WebServices,但 WSDL 包含 PHP 也不支持的绑定。
SOAP-ERROR:解析 WSDL:PHP-SOAP 不支持传输“http://schemas.microsoft.com/soap/named-pipe”
如何绕过这个问题?
【问题讨论】:
我必须使用 WCF WebServices,但 WSDL 包含 PHP 也不支持的绑定。
SOAP-ERROR:解析 WSDL:PHP-SOAP 不支持传输“http://schemas.microsoft.com/soap/named-pipe”
如何绕过这个问题?
【问题讨论】:
您似乎正在使用net named pipe binding 公开服务。这很可能不适用于 php,因为它不知道如何通过命名管道使用 SOAP/WS。
相反,您将希望使用basic HTTP binding 或WS HTTP binding 来公开您的服务,然后然后在PHP 中使用它。
【讨论】:
如果您可以控制 WCF 服务,一个解决方案是手动从 WSDL 中删除不受支持的绑定,并将 WSDL 保存在另一个位置并使用以下命令指向它:
<system.serviceModel>
<behaviors>
<serviceBehaviors>
<behavior name="test">
<serviceMetadata
externalMetadataLocation="http://YourServer/Service/MyService.wsdl"/>
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
【讨论】: