对于HttpWebRequest,MWS Address和OriginalString不同

时间:2015-07-01 15:48:49

标签: amazon-mws

发生了一些奇怪的事情,这可能会导致我最近遇到的问题(签名不匹配/ Content-MD5丢失)。

当我创建一个新的WebRequest时:

var request = (HttpWebRequest)WebRequest.Create(amazonConfig.DomainName + "?" + queryString);

queryString = 
AWSAccessKeyId=***&Action=SubmitFeed&Merchant=***&MWSAuthToken=***&SignatureVersion=2&Timestamp=2015-07-01T15%3A27%3A06Z&Version=2009-01-01&SignatureMethod=HmacSHA256&FeedType=_POST_PRODUCT_DATA_&PurgeAndReplace=false&Signature=***

查询字符串符合预期(编码)。然而,当我将鼠标悬停在var响应上时:

地址是(不是缺少编码,请参阅时间戳/签名的情况):

https://mws.amazonservices.co.uk/?AWSAccessKeyId=***&Action=SubmitFeed&Merchant=***&MWSAuthToken=***&SignatureVersion=2&Timestamp=2015-07-01T15:27:06Z&Version=2009-01-01&SignatureMethod=HmacSHA256&FeedType=_POST_PRODUCT_DATA_&PurgeAndReplace=false&Signature=***

OriginalString是(编码存在):

https://mws.amazonservices.co.uk/?AWSAccessKeyId=***&Action=SubmitFeed&Merchant=***&MWSAuthToken=***&SignatureVersion=2&Timestamp=2015-07-01T15%3A27%3A06Z&Version=2009-01-01&SignatureMethod=HmacSHA256&FeedType=_POST_PRODUCT_DATA_&PurgeAndReplace=false&Signature=***

RequestUri也不正确(正确编码的OriginalString除外)。

这是正常的还是这实际上是导致我的问题?

由于

克莱尔

1 个答案:

答案 0 :(得分:1)

请参阅我的其他问题:

签名问题:Signature calculated does not match the signature you provided Amazon

内容MD5:ContentMD5Missing - Amazon Webservice

对此的主要反应是不要担心Address / OriginalString不匹配,它似乎不会引起任何问题。