我正在尝试编写一个程序,该程序将自动创建和更新亚马逊上的产品列表。所以我正在做的是通过SDK中提供的SubmitFeed函数发送XML文件。运行程序时,我得到以下响应:
的FeedType _POST_PRODUCT_DATA _
SubmittedDate 2014-01-09T13:56:00Z
FeedProcessingStatus _提交_
当使用GetFeedSubmissionResult询问我的请求结果时,它返回提交“成功”。但是,更新不会发生。亚马逊支持和论坛无法(或愿意?)帮助我解决这个问题。
这是我正在使用的代码(用于测试问题,我只是想更改单个产品的标题):
include_once ('.config.inc.php');
$serviceUrl = "https://mws.amazonservices.de";
$config = array (
'ServiceURL' => $serviceUrl,
'ProxyHost' => null,
'ProxyPort' => -1,
'MaxErrorRetry' => 3,
);
$service = new MarketplaceWebService_Client(
AWS_ACCESS_KEY_ID,
AWS_SECRET_ACCESS_KEY,
$config,
APPLICATION_NAME,
APPLICATION_VERSION);
$haendler_token = '##TOKEN##';
$feed = '';
$feed.= '<?xml version="1.0" encoding="UTF-8"?>';
$feed.= '<AmazonEnvelope xsi:noNamespaceSchemaLocation="amzn-envelope.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">';
$feed.= ' <Header>';
$feed.= ' <DocumentVersion>1.01</DocumentVersion>';
$feed.= ' <MerchantIdentifier>'.$haendler_token.'</MerchantIdentifier>';
$feed.= ' </Header>';
$feed.= ' <MessageType>Product</MessageType>';
$feed.= ' <PurgeAndReplace>false</PurgeAndReplace>';
$feed.= ' <Message>';
$feed.= ' <MessageID>1</MessageID>';
$feed.= ' <OperationType>Update</OperationType>';
$feed.= ' <Product>';
$feed.= ' <SKU>##SKU##</SKU>';
$feed.= ' <DescriptionData>';
$feed.= ' <Title>##TITLE##</Title>';
$feed.= ' </DescriptionData>';
$feed.= ' </Product>';
$feed.= ' </Message>';
$feed.= '</AmazonEnvelope>';
$marketplaceIdArray = array("Id" => array('A1PA6795UKMFR9'));
$feedHandle = @fopen('php://temp', 'rw+');
fwrite($feedHandle, $feed);
rewind($feedHandle);
$parameters = array (
'Merchant' => MERCHANT_ID,
'MarketplaceIdList' => $marketplaceIdArray,
'FeedType' => '_POST_PRODUCT_DATA_',
'FeedContent' => $feedHandle,
'PurgeAndReplace' => false,
'ContentMd5' => base64_encode(md5(stream_get_contents($feedHandle), true)),
);
rewind($feedHandle);
$request = new MarketplaceWebService_Model_SubmitFeedRequest($parameters);
invokeSubmitFeed($service,$request);
@fclose($feedHandle);
我对整件事情非常绝望。感谢有人读这篇文章!
答案 0 :(得分:0)
有一个称为详细页面控制的系统,用于决定公共产品详细信息页面上显示的内容。它可能接受您的详细信息页面的标题,也可能不接受。 http://www.amazon.com/gp/help/customer/display.html?nodeId=200202130
如果标题已正确提交,如果您尝试手动编辑产品详细信息页面,则应该可以在Seller Central中找到它(此处有关说明:http://www.amazon.com/gp/help/customer/display.html/ref=hp_left_sib?ie=UTF8&nodeId=200202090)