我在使用亚马逊MWS API检索经过处理的订阅源文件的结果时遇到问题。我正在使用getFeedSubmissionResult类。问题是,当我按照文档的指示使用API时,没有相关的数据可以被我可以访问的类读取(或者看起来似乎)。所以我的问题是:如何检索亚马逊发回的原始XML文件并将其存储到我的计算机上的文件中?亚马逊MWS API w/PHP:替代getFeedSubmissionResult
我一直在回溯MWS使用的代码,并试图找到他们从亚马逊拉到XML文件的位置,并解析它以尝试将它保存到文件中,但没有运气。如果有人能指导我解决这个问题,我会深表谢意,如果不是的话,那么也许工作可能会更好。
因此,这是我一直在做:
我用getFeedSubmissionResultSample.php MWS的样品中提供。据说,这应该给我的数据告诉我有多少项目被处理,有多少处理项目是成功的。但事实并非如此。于是,我就做了响应变量的print_r的:
function invokeGetFeedSubmissionResult(MarketplaceWebService_Interface $service,$request) {
try {
$response = $service->getFeedSubmissionResult($request);
echo "<br />Var dump here: <pre>";
print_r($response);
echo ("<pre>Service Response\n");
echo ("=============================================================================\n");
echo(" GetFeedSubmissionResultResponse\n");
if ($response->isSetGetFeedSubmissionResultResult()) {
$getFeedSubmissionResultResult = $response->getGetFeedSubmissionResultResult();
echo (" GetFeedSubmissionResult\n");
if ($getFeedSubmissionResultResult->isSetContentMd5()) {
echo (" ContentMd5\n");
echo (" " . $getFeedSubmissionResultResult->getContentMd5() . "\n");
}
}
if ($response->isSetResponseMetadata()) {
echo(" ResponseMetadata\n");
$responseMetadata = $response->getResponseMetadata();
if ($responseMetadata->isSetRequestId())
{
echo(" RequestId\n");
echo(" " . $responseMetadata->getRequestId() . "\n");
}
}
echo(" ResponseHeaderMetadata: " . $response->getResponseHeaderMetadata() . "\n");
} catch (MarketplaceWebService_Exception $ex) {
echo("Caught Exception: " . $ex->getMessage() . "\n");
echo("Response Status Code: " . $ex->getStatusCode() . "\n");
echo("Error Code: " . $ex->getErrorCode() . "\n");
echo("Error Type: " . $ex->getErrorType() . "\n");
echo("Request ID: " . $ex->getRequestId() . "\n");
echo("XML: " . $ex->getXML() . "\n");
echo("ResponseHeaderMetadata: " . $ex->getResponseHeaderMetadata() . "\n");
}
}
和输出使我这个:
服务响应
GetFeedSubmissionResultResponse
GetFeedSubmissionResult
ContentMd5
G5Sw+2ooONEZU1iQoqdEOQ==
ResponseMetadata
RequestId
f9d4be45-6710-42eb-850e-f437224f9938
ResponseHeaderMetadata: RequestId: f9d4be45-6710-42eb-850e-f437224f9938, ResponseContext: EM/RH7RHQhLSc47Tj2a2Uv2CGKEfvxaKOijjcaKeoh8dGISci3yqo9OHZs7dpLDIszJVz4Jt4z8=,9SYUaktMzcOG6UyuyhXu/kJPl0gpLeenslL2rkugDLhDYftMleRx1XIexbVWNxuYl7cO6901Foiv Kp7hvaLeAQ==, Timestamp: 2013-06-18T07:29:37.393Z
,因为我没有我省略了结果的var_dump知道这是否会对我造成安全问题。但在任何情况下,var_dump都没有提供任何我可以访问的数据。我还将代码追溯到类和方法的位置,以查看是否可以从那里访问它,但却空手而归。
请注意,我有适当的参数来调用结果(即FeedSubmissionId),因为我已经使用亚马逊便笺本进行了此操作。
您的帮助将不胜感激! :)
问候, 迦勒
哇!这完美的作品! :) 这难以置信!非常感谢!令人沮丧的是,没有文档可以更好地解释如何获得结果。这甚至不在亚马逊的MWS手册中。再次感谢! – Caleb
我同意你的观点,那对我来说太难了:)这就是我发布它的原因。 – 1nstinct
我一直拼错MWS!哈哈,再次感谢您的帮助!你的声望得分应该被撞到100!:) – Caleb