在亚马逊MWS API上创建出站货件时签名错误

时间:2017-04-12 15:37:02

标签: node.js amazon amazon-mws

我正在尝试在亚马逊MWS API上创建出站履行(CreateFulfillmentOrder)。我正在使用node.js包mws-api来发出请求,我自己修改了这个请求,因为它不能正确支持这个操作。无论如何,这是我发送给API的确切请求(敏感信息已更改):

{ 
 uri: 'https://mws.amazonservices.co.uk/FulfillmentOutboundShipment/2010-10-01',
 method: 'POST',
 headers:
  { Host: 'mws.amazonservices.co.uk',
    'User-Agent': 'mws-api/0.1.0 (Language=JavaScript)',
    'content-type': 'application/x-www-form-urlencoded',
    'content-length': 1095 },
 body: 'SellerFulfillmentOrderId=403-9883411-3564317&ShippingSpeedCategory=Standard&DisplayableOrderId=403-9883411-3564317&DisplayableOrderDateTime=2013-12-29&DisplayableOrderComment=Order&NotificationEmailList.member.1=3yv4at7rtl3blsy%40marketplace.amazon.co.uk&DestinationAddress.Name=Amazon%20Taro&DestinationAddress.Line1=COMPANY%NAME&DestinationAddress.City=GORING&DestinationAddress.StateOrProvinceCode=Oxon&DestinationAddress.PostalCode=RG8%209AQ&DestinationAddress.CountryCode=GB&DestinationAddress.PhoneNumber=01575375219&Items.member.1.DisplayableComment=item&Items.member.1.GiftMessage=gift&Items.member.1.PerUnitDeclaredValue.Value=4.29&Items.member.1.PerUnitDeclaredValue.CurrencyCode=GBP&Items.member.1.Quantity=1&Items.member.1.SellerFulfillmentOrderItemId=CW0298&Items.member.1.SellerSKU=CW0298&Action=CreateFulfillmentOrder&Version=2010-10-01&Timestamp=2017-04-12T14%3A39%3A22.707Z&AWSAccessKeyId=LYIAJ83AORVSI6WLBTQA&SellerId=7RVB74LQNDFDB1&SignatureMethod=HmacSHA256&SignatureVersion=2&Signature=nlB5UTDUXexkurlsc7e%2F4tqLO8vcMRy4X%6Oa0rPIapZN8%3D' }

但我得到的回应是这个错误:

The request signature we calculated does not match the signature you provided. Check your AWS Secret Access Key and signing method. Consult the service documentation for details.

我没有签名的任何问题,它在进行其他操作时工作正常。我认为这只是亚马逊在请求出错时给你的错误,但我找不到问题。有谁知道可能是什么问题?

感谢。

1 个答案:

答案 0 :(得分:0)

您需要使用亚马逊主机 mws.amazonaws.com

前:

    { 
     uri: 'https://mws.amazonaws.com/FulfillmentOutboundShipment/2010-10-01',
     method: 'POST',
     headers:
      { Host: 'mws.amazonaws.com',
            'User-Agent': 'mws-api/0.1.0 (Language=JavaScript)',
            'content-type': 'application/x-www-form-urlencoded',
        'content-length': 1095 
       },
       body:'SellerFulfillmentOrderId=403-9883411-3564317&ShippingSpeedCategory=Standard&DisplayableOrderId=403-9883411-3564317&DisplayableOrderDateTime=2013-12-29&DisplayableOrderComment=Order&NotificationEmailList.member.1=3yv4at7rtl3blsy%40marketplace.amazon.co.uk&DestinationAddress.Name=Amazon%20Taro&DestinationAddress.Line1=COMPANY%NAME&DestinationAddress.City=GORING&DestinationAddress.StateOrProvinceCode=Oxon&DestinationAddress.PostalCode=RG8%209AQ&DestinationAddress.CountryCode=GB&DestinationAddress.PhoneNumber=01575375219&Items.member.1.DisplayableComment=item&Items.member.1.GiftMessage=gift&Items.member.1.PerUnitDeclaredValue.Value=4.29&Items.member.1.PerUnitDeclaredValue.CurrencyCode=GBP&Items.member.1.Quantity=1&Items.member.1.SellerFulfillmentOrderItemId=CW0298&Items.member.1.SellerSKU=CW0298&Action=CreateFulfillmentOrder&Version=2010-10-01&Timestamp=2017-04-12T14%3A39%3A22.707Z&AWSAccessKeyId=LYIAJ83AORVSI6WLBTQA&SellerId=7RVB74LQNDFDB1&SignatureMethod=HmacSHA256&SignatureVersion=2&Signature=nlB5UTDUXexkurlsc7e%2F4tqLO8vcMRy4X%6Oa0rPIapZN8%3D' 
    }

这可能会对你有帮助。