MWS Scratchpad中的此简单代码给我这个50001错误“您提交的XML在第2行第14行(或附近)的Amazon Envelope XML级别上格式错误。”
<?xml version="1.0" encoding="utf-8"?>
<messagetype>OrderFulfillment</messagetype>
<message>
<messageid>1</messageid>
<orderfulfillment>
<amazonorderid>171-0326363-1826719</amazonorderid>
<carriername>La Poste</carriername>
<shippertrackingnumber>1K03004689202</shippertrackingnumber>
</orderfulfillment>
</message>
最可能是因为没有根元素。所有XML必须包含在单个元素节点(即根)中。对于XHTML,它是<html>
。但是,由于我不了解amazon-mws暂存器的约定,因此我只能猜测到这些。您将需要类似:
<?xml version="1.0" encoding="utf-8"?>
<some-outer-element>
<messagetype>OrderFulfillment</messagetype>
<message>
...
</message>
</some-outer-element>
其中<some-outer-element>
必须是您使用的文档类型的有效根元素。应该在Amazon MWS(Scratchpad)的文档或您使用的XML的XML模式定义中找到哪一个。
您是否缺少AmazonEnvelope?
<AmazonEnvelope xsi:noNamespaceSchemaLocation="amzn-envelope.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Header>
<DocumentVersion>1.02</DocumentVersion>
<MerchantIdentifier>XXXXXXXXXXXX</MerchantIdentifier>
</Header>
<MessageType.....
</AmazonEnvelope>
https://docs.developer.amazonservices.com/en_US/feeds/Feeds_SubmitFeed.html