带有自定义端口的PHP Soap客户端

时间:2018-01-31 13:36:25

标签: php soap wsdl port

我请求托管在域名不是80的域上的wsdl。

http://example.com:5555/test.asmx?wsdl

但是他们没有在<port>元素中指定端口

<wsdl:port name="ECommerceServiceSoap" binding="tns:ECommerceServiceSoap">
    <soap:address location="http://example.com/test.asmx" />
</wsdl:port>

所以我可以下载wsdl但是它的所有调用都得到404响应,因为PHP soapclient没有调用正确的url(没有端口)。

我有什么解决方案?

1 个答案:

答案 0 :(得分:1)

想出一个解决方案:

我将wsdl下载/复制到本地文件,添加了端口并将soapclient指向它。现在一切正常。

<wsdl:port name="ECommerceServiceSoap" binding="tns:ECommerceServiceSoap">
    <soap:address location="http://example.com:5555/test.asmx" />
</wsdl:port>