修改PHP SoapClient以使用https而不是http来获取xsd架构

时间:2016-06-21 09:23:27

标签: php soap-client

我使用SoapClient连接到WSDL服务,并且WSDL中的schemaLocation被错误地设置为http://地址,我认为该地址应该是https://地址。

  

SOAP-ERROR:解析架构:无法从' http:// ...

导入架构

我可以使用https://

获取curl架构

我无法修改wsdl,所以我试图弄清楚是否可以在获取模式时调用SoapClient调用https://来查看是否可以解决问题。

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

不幸的是,必须在WSDL文件中更改错误的值(不幸的是)。解决这个问题的方法是从SoapClient派生新类并重载其方法。在您的情况下,在其构造函数中创建新类并修复WSDL:下载WSDL文件,在适当的位置将http更改为https并将其传递给基础SoapClient构造函数。