【发布时间】:2018-12-03 20:59:11
【问题描述】:
那里,
我想创建一个主页并在其上自动显示 mobile.de 的广告。 为此,mobile.de 提供了一个 API: https://services.mobile.de/manual/search-api.html
我有权访问数据,当我通过浏览器开始通话时: https://services.mobile.de/search-api/search?customerNumber=503300
我得到这个结果:
<search:search-result xmlns:seller="http://services.mobile.de/schema/seller" xmlns:ad="http://services.mobile.de/schema/ad" xmlns:search="http://services.mobile.de/schema/search" xmlns:financing="http://services.mobile.de/schema/common/financing-1.0" xmlns:resource="http://services.mobile.de/schema/resource" xmlns:error="http://services.mobile.de/schema/common/error-1.0">
<search:total>4</search:total>
<search:page-size>20</search:page-size>
<search:current-page>1</search:current-page>
<search:max-pages>1</search:max-pages>
<search:ads>
<ad:ad key="266399529" url="https://services.mobile.de/search-api/ad/266399529">
<ad:creation-date value="2018-11-19T07:53:58+01:00"/>
<ad:modification-date value="2018-11-19T07:53:58+01:00"/>
<ad:detail-page url="https://suchen.mobile.de/auto-inserat/porsche-997-gt3-rs-ruf-4-0-einzelst%C3%BCck-allrad-solms/266399529.html?source=api"/>
<ad:vehicle>
我觉得不错! 现在我想通过个别广告和有问题。 各个广告按此行分组:
<ad:ad key="266399529" url="https://services.mobile.de/search-api/ad/266399529">
通过我多年的经验,尤其是通过互联网,我得出了以下代码:
error_reporting(E_ALL);
ini_set('display_errors', true);
$process = curl_init("https://services.mobile.de/search-api/search?customerNumber=503300");
curl_setopt($process, CURLOPT_HTTPHEADER, array('Content-Type: application/xml'));
curl_setopt($process, CURLOPT_HEADER, 0);
curl_setopt($process, CURLOPT_USERPWD, "username:password");
curl_setopt($process, CURLOPT_TIMEOUT, 30);
curl_setopt($process, CURLOPT_RETURNTRANSFER, TRUE);
$return = curl_exec($process);
curl_close($process);
$xml = simplexml_load_string($return);
$ns = $xml->children('http://services.mobile.de/schema/ad');
foreach($ns as $ad) {
$attributes = $ad->attributes();
$key = (string) $attributes['key'];
var_dump($key);
}
不幸的是,我没有得到任何答案,一个没有错误消息的空白页面。
【问题讨论】:
-
如果这是完整的响应,我认为这不是有效/完整的 XML
-
我刚刚发布了xml文件的开头。
-
如果我们没有有效的数据可以使用,我们应该如何调试呢?