2011-05-30 93 views
1

我正在尝试亚马逊产品广告API,他们的教程here亚马逊产品广告API的http 500内部服务器错误

在做任何编码之前,我试图按照教程并使用Signed Requests Helper表格online来证明这个概念。我在访问密钥ID和秘密访问键进入,然后在下面的未签名的URL框中输入:

_http://ecs.amazonaws.com/onca/xml?Service=AWSECommerceService 
&Version=2010-11-01 
&Operation=ItemSearch 
&SearchIndex=Books 
&Keywords=harry+potter 

我复制签名网址框中的内容粘贴到浏览器的地址栏(用正确的访问密钥和签名):

_http://ecs.amazonaws.com/onca/xml AWSAccessKeyId = [MY_ACCESS_KEY] &关键词=哈里%20potter &操作= ItemSearch%0D & SearchIndex =书籍%0D &服务= AWSECommerceService%0D &时间戳= 2011-05-30T07%3A56%3A17.000Z &版本= 2010-11-01%0D &签名= [MY_SIGNATURE]

作为回报,我得到一个HTTP 500内部服务器错误。

(注意我已经插入两个例子超链接前unscore如计算器将不允许超过2个链接新手。)

我试着IE8和Chrome,并且也尝试了.CO。因为我住在英国。我也没有运气看过AWS论坛。任何帮助,将不胜感激...

回答

0

我已经尝试生成与您链接到使用我的访问密钥ID和秘密访问密钥的页面的签名的URL,并且我得到正确的响应。

我注意到的一件事是,您签名的URL包含一个额外的字符(%0D - 换行符?),结束了您的一些请求参数值。在未经签名的URL输入中复制示例网址时是否添加了这些字符?请尝试修复未签名的网址,直到这些字符未显示在已签名的网址框中,然后再次尝试使用已签名的网址。

+0

优秀 - 它现在可以工作。我复制了示例URL并将其粘贴到未签名的URL框中(使用IE8),并粘贴了这些换行符。删除这些解决了这个问题。我还注意到,将示例网址粘贴到Chrome中的未签名URL输入意味着不会粘贴换行符。 – barkside 2011-06-01 17:31:03

相关问题