亚马逊 MWS API:- 如何使用 PHP 将 xml 产品提要上传到 _POST_PRODUCT_DATA_
Posted
技术标签:
【中文标题】亚马逊 MWS API:- 如何使用 PHP 将 xml 产品提要上传到 _POST_PRODUCT_DATA_【英文标题】:Amazon MWS API: - how to upload xml product feeds using PHP to _POST_PRODUCT_DATA_ 【发布时间】:2015-06-25 19:07:31 【问题描述】:我在使用 亚马逊 MWS API 时遇到问题 出于某种原因,我不断收到此错误消息
“XML Parsing Fatal Error at Line -1, Column -1: Premature end of file. Premature end of file.”
我尝试了很多教程、示例、文档、sdks 和各种。
一切都返回相同的消息。
这是我尝试通过 xml api 服务提交给亚马逊的 xml 文件示例
谁能给我展示一些经过测试和工作的代码来制作这个产品或使用PHP上传的任何产品?
<?xml version="1.0" ?>
<AmazonEnvelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="amzn-envelope.xsd">
<Header>
<DocumentVersion>1.01</DocumentVersion>
<MerchantIdentifier>xxxxx</MerchantIdentifier>
</Header>
<MessageType>Product</MessageType>
<PurgeAndReplace>true</PurgeAndReplace>
<Message>
<MessageID>1</MessageID>
<OperationType>Update</OperationType>
<Product>
<SKU>1Z-500ABR-FLAT</SKU>
<ProductTaxCode>A_GEN_TAX</ProductTaxCode>
<LaunchDate>2005-07-26T00:00:01</LaunchDate>
<DescriptionData>
<Title>Lyric 500 tc Queen Flat Sheet, Ivory</Title>
<Brand>Peacock Alley</Brand>
<Description>Lyric sheeting by Peacock Alley is t
he epitome of simple and classic elegance. The flat
sheets
and pillowcases feature a double row of hemstitchin
g. The fitted sheets fit mattresses up to 21 inches
deep.
The sheets are shown at left with tone on tone mono
gramming, please call for monogramming details and
prices.
Please note, gift wrapping and overnight shipping a
re not available for this style.</Description>
<BulletPoint>made in Italy</BulletPoint>
<BulletPoint>500 thread count</BulletPoint>
<BulletPoint>plain weave (percale)</BulletPoint>
<BulletPoint>100% Egyptian cotton</BulletPoint>
<Manufacturer>Peacock Alley</Manufacturer>
<SearchTerms>bedding</SearchTerms>
<SearchTerms>Sheets</SearchTerms>
<ItemType>flat-sheets</ItemType>
<IsGiftWrapAvailable>false</IsGiftWrapAvailable>
<IsGiftMessageAvailable>false</IsGiftMessageAvailable>
<RecommendedBrowseNode>60583031</RecommendedBrowseNode>
<RecommendedBrowseNode>60576021</RecommendedBrowseNode>
</DescriptionData>
<ProductData>
<Home>
<Parentage>variation-parent</Parentage>
<VariationData>
<VariationTheme>Size-Color</VariationTheme>
</VariationData>
<Material>cotton</Material>
<ThreadCount>500</ThreadCount>
</Home>
</ProductData>
</Product>
</Message>
<Message>
【问题讨论】:
【参考方案1】:您的 XML 无效。您需要将最后一行 <Message>
替换为 </AmazonEnvelope>
以使其成为有效的 XML 文档。
您还需要更改 <Home>
元素的结构以使用 Amazon 的 XSD 进行验证(我假设 FurnitureAndDecor
是正确的产品类型):
<Home>
<ProductType>
<FurnitureAndDecor>
<Material>cotton</Material>
<ThreadCount>500</ThreadCount>
<VariationData>
<VariationTheme>Size-Color</VariationTheme>
</VariationData>
</FurnitureAndDecor>
</ProductType>
<Parentage>variation-parent</Parentage>
</Home>
【讨论】:
以上是关于亚马逊 MWS API:- 如何使用 PHP 将 xml 产品提要上传到 _POST_PRODUCT_DATA_的主要内容,如果未能解决你的问题,请参考以下文章