我正在研究如何处理亚马逊订单的自定义字段,并根据他们的MWS API Docs,如果客户选择个性化其订单,那么用于下载此数据的URL会出现在订单项XML的BuyerCustomizedInfo中节点:
<OrderItem xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<ASIN>ABC123</ASIN>
...
<ConditionSubtypeId>New</ConditionSubtypeId>
<BuyerCustomizedInfo>
<CustomizedURL>https://zme-caps.amazon.com/t/ABC123/ABC123/1</CustomizedURL>
</BuyerCustomizedInfo>
</OrderItem>
我的客户给了我两个这样的命令,当我点击这些链接时,我得到的只是
NoSuchURL:网址ID“ ABC123”已过期或不存在!
我知道ZIP将包含我必须解析的JSON,并且可能还包含对SVG的引用,并且在处理自定义字段时,我还必须使代码更加健壮。
我收到此错误消息是因为这些链接对时间敏感或仅使用一次?还是其他?
答案 0 :(得分:1)
首先,我不是开发人员,我是亚马逊卖家-在进行研究时发现了您的问题,因为我试图找出可能的方法并为类似系统制定计划,然后聘请开发人员。
我在下面粘贴了一些从美国找到的信息-尽管欧洲市场中Amazon Custom的实施可能与美国不同。
通常,很难获得有关与Amazon Custom有关的任何信息的好信息,而且似乎有一个混乱的逻辑-随时问任何问题,我会尽力而为。
首先,请确保您具有最新的Amazon MWS Orders API SDK。如果您不这样做,并且拒绝更新,则可以为订单创建一个报告API,其中将包含ZIP URL,但您必须对其进行解析,否则生活将变得很艰难。
接下来,对于订单,调用您可能已经执行的ListOrderItems。您将在响应XML中的BuyerCustomizedInfo-> CustomizedURL下看到自定义。
这是一个ZIP。使用CURL下载zip,并进行大量检查和后备,因为有时它会失败。
将ZIP提取到文件夹中。在该文件夹内将有一个json文件。
解析该JSON文件,您可能会知道从哪里将这些信息放入系统中。
根据您产品的配置方式,可能还会解析一个SVG文件,以获取一些自定义信息。特别是json-> {'version3.0'}-> customizationInfo-> Surfaces(每个表面)->区域。每个区域应为文本行或图像。至少我们的产品设置就是这样。
和往常一样,进行大量检查,尝试捕获,后备和错误警报。
答案 1 :(得分:1)
这些链接对时间敏感,我认为六个月后就会失效。
链接应该稍微复杂一些,如果恰好是您所看到的链接,则它是不正确的。
您不需要任何身份验证即可下载它们,最简单的测试方法是通过MWS Scratchpad。