AWS API会根据真实性不断失败拒绝我的请求

时间:2018-08-11 13:35:21

标签: amazon-web-services

我正在尝试利用Amazon API检索我正在开发的应用程序的产品信息。我注册了Amazon,并创建了一个访问ID和一个密钥。我在网上用来创建我的签名的网站上找到了

  

https://www.jokecamp.com/blog/examples-of-creating-base64-hashes-using-hmac-sha256-in-different-languages/#js

我正在使用在该站点上找到的JavaScript实现。此实现采用两个参数,一个消息字符串和一个秘密密钥。这是我发送的消息字符串:

  

http://webservices.amazon.com/onca/xml?Service=AWSECommerceService&Operation=ItemLookup&ResponseGroup=Large&SearchIndex=All&IdType=UPC&ItemId=5000159459228&AWSAccessKeyId=AKIAIHI7RHJARE24DVBA&Timestamp=2018-08-11T13:02:01Z

作为第二个参数,我要发送我的亚马逊秘密密钥。当函数返回签名时,我将其剪切并粘贴到要发送给Amazon的字符串中。结果字符串如下所示:

  

http://webservices.amazon.com/onca/xml?Service=AWSECommerceService&Operation=ItemLookup&ResponseGroup=Large&SearchIndex=All&IdType=UPC&ItemId=5000159459228&AWSAccessKeyId=AKIAIHI7RHJARE24DVBA&Timestamp=2018-08-11T13:02:01Z&Signature=52c173bdaa24c9847cc2ee2af7e4282c0bcd2a0246f2c4c8a5611b52fe5ce011

我从亚马逊回来的消息是这个

  

我们计算出的请求签名与您提供的签名不匹配。检查您的AWS Secret Access密钥和签名方法。有关详细信息,请查阅服务文档。

我只能假设Amazon生成的签名与我发送的签名不同。

有什么建议吗?

0 个答案:

没有答案