我正在玩亚马逊开发者的API,但我没有得到任何东西。
这是我的代码。我正在使用echo
来查看是否有任何事情发生,我得到的只是一个空白网页。我希望能够回应搜索结果数组。
<?php
error_reporting(E_ALL);
ini_set("display_errors", 1);
require_once('Zend/Service/Amazon.php');
$amazon = new Zend_Service_Amazon('AKIAJQBYUXIFWUIX6W6A', 'US', 'YGV9zePfKejV6C3dpaP/NtnhjGLfWQsccdGSSL50');
$results = $amazon->itemSearch(array('SearchIndex' => 'Books',
'Keywords' => 'php'));
foreach ($results as $result) {
echo $result->Title . '<br />';
}
?>
获取空白页面
答案 0 :(得分:1)
您的页面空白,因为您没有收到任何结果:
这是使用您发布的代码的$ results转储:
Amazon object(Zend_Service_Amazon_ResultSet)#103 (4) {
["_results":protected] => object(DOMNodeList)#105 (0) {
}
["_dom":protected] => object(DOMDocument)#101 (0) {
}
["_xpath":protected] => object(DOMXPath)#104 (0) {
}
["_currentIndex":protected] => int(0)
}
要解决这个问题需要解决几个问题,最重要的是:
以下更改将于2011年11月1日生效:
关联标记参数:每次向API发出的请求都应包含 有效的关联标签。任何不包含有效的请求 关联标记将被拒绝,并显示相应的错误消息。对于 有关Associate Tag参数的详细信息,请参阅我们的开发人员 引导。
目前Zend_Service_Amazon
的构造函数不包含 Associate Tag 参数,而_prepareOptions()
方法未设置选项。
我确定有人对此有所解决,否则是时候深入挖掘并扩展......祝你好运
Amazon Product Advertising API
Changes to Product Advertising API
答案 1 :(得分:1)
Zend_Service_Amazon已过期并使用旧的WSDL。 见http://zendframework.com/issues/browse/ZF-12046
等待1.12或使用提供的批处理文件。