加密和上载源数据时出现错误
the document link :https://github.com/amzn/selling-partner-api-docs/blob/main/guides/use-case-guides/feeds-api-use-case-guide-2020-09-04.md#step-2-encrypt-and-upload-the-feed-data
我用php开发,编写者是composer require double-break/spapi-php
。
$feeder = new Feeder();
$feeder->uploadFeedDocument($docPayload, 'text/plain; charset=utf-8',
//ROOT_PATH.'uploads/amz/'.$feedFileName
'https://images-na.ssl-images-amazon.com/images/G/01/rainier/help/xsd/release_4_1/OrderAcknowledgement.xsd'
);
加密和上载源数据时出现错误:
3条答案
按热度按时间relj7zay1#
确保传递给
createFeedDocument
的内容类型与传递给Feeder::uploadFeedDocument
的内容类型完全匹配。在我的例子中,我将text/tab-separated-values
传递给前者,而将text/tab-separated-values; charset=UTF-8
传递给后者(附加了字符集),并得到了您所描述的错误。我通过在两个示例中都传递text/tab-separated-values; charset=UTF-8
来修复它。46scxncf2#
我同意这个评论https://stackoverflow.com/a/67474344/12360781
但更详细的答案是,我们应该将这些头传递给
PUT
请求,当然,content-type
应该与我们传递给CreateFeedDocument
操作的相同。{"Content-Type": "text/tab-separated-values; charset=UTF-8"}
这段代码在Ruby中对我很有效:
faraday_connection = Faraday::Connection.new(@url)
@response = faraday_connection.send(:put, nil, @data.to_json, { "Content-Type": "text/tab-separated-values; charset=UTF-8" })
h5qlskok3#
我遇到了同样的问题,在花了三天时间寻找解决方案后,我终于找到了下面的解决方案,虽然我使用的是Github C# sdk,但错误是相同的。
我错过了两个重要的标题需要和后提供他们修复了我的问题。
下面是代码(C#)
祝你好运!