内部服务器错误500简单exml_Load_FILE

2022-04-13 00:00:00 php simplexml

如果我使用Firefox并访问http://svcs.ebay.com/services/search/FindingService/v1,我会得到一些相应的XML,当我通过PHP执行此操作时,我会收到内部服务器错误500

$ php -r 'print_r(simplexml_load_file("http://svcs.ebay.com/services/search/FindingService/v1"));'
PHP Warning:  simplexml_load_file(http://svcs.ebay.com/services/search/FindingService/v1): failed to open stream: HTTP request failed! HTTP/1.1 500 Internal Server Error
 in Command line code on line 1
PHP Stack trace:
PHP   1. {main}() Command line code:0
PHP   2. simplexml_load_file() Command line code:1
PHP Warning:  simplexml_load_file(): I/O warning : failed to load external entity "http://svcs.ebay.com/services/search/FindingService/v1" in Command line code on line 1
PHP Stack trace:
PHP   1. {main}() Command line code:0
PHP   2. simplexml_load_file() Command line code:1
$ 

解决方案

当我访问Firefox中的http://svcs.ebay.com/services/search/FindingService/v1时,Firebug报告Http响应代码确实是500时。(即使它在请求正文中发送一些XML)

您正在以错误的方式调用Web服务。

是的,您拿回了XML,但响应代码是500,这意味着您的URL是错误的。

通过url包装调用ximlexml_load_file需要一个成功代码。

也就是说,您可能无论如何都可以获得数据。也许吧。

但您应该弄清楚该服务希望您如何查询。

相关文章