![](/img/trans.png)
[英]SOAP-ERROR: Parsing WSDL: Couldn't load from 'http://127.0.0.1/test/index?wsdl' :
[英]SOAP-ERROR: Parsing WSDL: Couldn't load from 'http://…' in Google App Engine PHP App
我试图使用一个简单的PHP脚本从我的GAE帐户连接到Amazon Web Services。 但是,第一行引发错误:
$ wsdlURI =' http://www.webservices.amazon.com/AWSECommerceService/AWSECommerceService.wsdl '; $ soapClient =新的SoapClient($ wsdlURI);
我收到此错误:SOAP错误:解析WSDL:无法从“ http:// .....”加载,无法加载外部实体
当我在上述URL上执行一个简单的file_get_contents时,它就可以正常工作。 只有SoapClient无法获得wsdl文件上的句柄。。。。仅GAE似乎有此问题。 我在另一台服务器上尝试了相同的代码,并且一切正常。
我缺少GAE中的任何设置吗?
这也与默认情况下禁用外部实体的加载有关,您将需要启用它才能使其正常工作。
首先,您必须创建一个包含以下行的php.ini文件:
google_app_engine.enable_functions = "libxml_disable_entity_loader"
然后,在通话前添加以下内容。
libxml_disable_entity_loader(false);
为了使SoapClient使用套接字应用程序工作,还需要启用计费功能。
该问题可能与以下问题有关: https : //code.google.com/p/googleappengine/issues/detail?id=9858 。 看起来SOAP需要套接字支持,而这尚未成为PHP运行时的一部分。
检查您是否激活了以下扩展:php open ssl和php soap client。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.