我请求托管在域名不是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(没有端口)。
我有什么解决方案?
答案 0 :(得分:1)
想出一个解决方案:
我将wsdl下载/复制到本地文件,添加了端口并将soapclient指向它。现在一切正常。
<wsdl:port name="ECommerceServiceSoap" binding="tns:ECommerceServiceSoap">
<soap:address location="http://example.com:5555/test.asmx" />
</wsdl:port>