2014-01-14 44 views
0

我試圖編寫一個程序,它會自動創建和更新亞馬遜上的產品列表。所以我正在通過SDK中提供的SubmitFeed函數發送一個XML文件。運行程序時,我得到如下回應:亞馬遜MWS - SubmitFeed發送成功,但不會被處理

的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

有一個稱爲詳細頁面控件的系統,用於決定公共產品詳細信息頁面上顯示的內容。它可能會接受您的詳細信息頁面的標題,或者它可能不會。 http://www.amazon.com/gp/help/customer/display.html?nodeId=200202130

如果標題是正確提交,你應該能夠找到它的賣家中心,如果你嘗試手動(在這裏說明:http://www.amazon.com/gp/help/customer/display.html/ref=hp_left_sib?ie=UTF8&nodeId=200202090)編輯商品詳細頁當我是唯一一個

+0

提供某種產品時,變化應該總是顯示出來,不應該嗎? – snmueller89

+0

不一定,不。如果您需要更改標題並且更改未被接受,那麼您可以與賣方支持人員聯繫以詢問相關問題。 –