【发布时间】:2012-03-01 21:36:50
【问题描述】:
我有一个想通过 SOAP 访问的 Web 服务。 但我收到一个 SOAP 错误:
Exception caught: SOAP-ERROR: Parsing WSDL: Couldn´t load from 'http://127.0.0.1:9999/info?wsdl' : failed to load external entity "http://127.0.0.1:9999/info?wsdl"
如果我在浏览器中手动输入网址http://127.0.0.1:9999/info?wsdl,则可以看到生成的xml文件。
为什么我不能用 SOAP 加载它?
我在 PHP 中使用 SOAP 加载 URL,如下所示:
$soap = new SoapClient("http://127.0.0.1:9999/info?wsdl", 数组("trace" => TRUE));
我错过了什么?
编辑
将 SOAP 版本设置为 1.1 并不能使其正常工作:
$soap = new SoapClient("http://127.0.0.1:9999/info?wsdl", array("trace" => TRUE, "soap_version" => SOAP_1_1));
编辑 2:
我让它在 Windows 和 Ubuntu 上都可以工作,但不能在 CentOS 6 上工作。CentOS 6 是否有什么东西使 PHP:s SoapClient 不能工作?我在 CentOS 6 机器上运行的 PHP 版本是 5.3.3,(当然)在 PHP 中启用了 Soap 支持。
【问题讨论】:
标签: php web-services soap wsdl