javascript - 收到 _POST_ORDER_FULFILLMENT_DATA_ 的签名错误

标签 javascript amazon-web-services sapui5 amazon-mws

我正在尝试使用 sapui5 中的 javascript 在 SubmitFeed 上发布履行数据,并且我已完成以下步骤,

1) 我为履行数据创建了 json 对象,并将其转换为 XML,再次将 XML 转换为 MD5。 JSON 代码:-

{
                      "AmazonEnvelope": {
                            "-xmlns:xsi": "http://www.w3.org/2001/XMLSchema-instance",
                            "-xsi:noNamespaceSchemaLocation": "amznenvelope.xsd",
                            "Header": {
                              "DocumentVersion": "1.01",
                              "MerchantIdentifier": "Example"
                            },
                            "MessageType": "OrderFulfillment",
                            "Message": {
                              "MessageID": "1",
                              "OperationType": "Update",
                              "OrderFulfillment": {
                                "AmazonOrderID": "102-8289425-201934",
                                "FulfillmentDate": "2017-06-20T00:36:33-08:00",
                                "FulfillmentData": {
                                  "CarrierName": "UPS",
                                  "ShippingMethod": "Second Day",
                                  "ShipperTrackingNumber": "1234567890"
                                },
                                "Item": {
                                  "AmazonOrderItemCode": "1234567",
                                  "MerchantFulfillmentItemID": "1234567",
                                  "Quantity": "2"
                                }
                              }
                            }
                          }
                        }; 

2) 根据 api 文档创建签名。 3) 将数据发布到Feed/2009-01-01。

但我收到的错误为:-

"<?xml version="1.0"?>
<ErrorResponse xmlns="https://mws.amazonservices.com/">
  <Error>
    <Type>Sender</Type>
    <Code>InvalidAddress</Code>
    <Message>Resource /$metadata is not found on this server. API Version is missing</Message>
  </Error>
  <RequestID>c00cb653-f53c-445f-9f24-82587144805d</RequestID>
</ErrorResponse>
"

请帮我解决这个问题。 谢谢

最佳答案

您收到的错误是InvalidAddress,而不是签名检查错误。看来您在步骤 3 中所做的任何事情(在 Feed/2009-01-01 上发布数据)都没有按预期工作。 MWS 服务器看到对 /$metadata 的请求,而不是 API 名称和版本。您的问题不包括执行此操作的代码段。

关于javascript - 收到 _POST_ORDER_FULFILLMENT_DATA_ 的签名错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44638748/

相关文章:

amazon-ec2 - 新的 Amazon EC2 集群 GPU 实例的体验如何?

javascript - 扩展一个 Controller 来扩展另一个 Controller 时出现问题

Apache 反向代理阻止 SAP fiori 启动板 URL

ios - AWS S3 iOS 开发工具包 : How to resume upload after connection is interrupted?

ios - 将 iOS 应用程序连接到亚马逊上托管的 Ejabberd 服务器

javascript - SAPUI5 中的语言切换

javascript - React - 单击位于组件外部的按钮时重新渲染组件

javascript - 如何在 Vue 中加载 YAML 文件?

javascript - 否则如果在 Angular js模板中

javascript - JQuery UI Datepicker 改变一天的样式