使用MWS获取产品信息时重新定义参数$ quotaMax错误

Lin*_*oln 7 php amazon-mws

我正在尝试使用亚马逊MWS API从产品中获取信息,我遇到了这个恼人的错误:

致命错误:重新定义参数$ quotaMax ....(文件ResponseHeaderMetadata.php的路径)

我的MWS凭证是可以的,因为我在MWS暂存器上尝试了完全相同的凭据,并且响应是正确的.我的代码正在使用Products API的MWS示例.我正在使用GetMatchingProductSample.php,最重要的部分是:

$asin_list = new MarketplaceWebServiceProducts_Model_ASINListType();
$asin_list->setASIN(array("B01BH9EXX2"));

$request = new MarketplaceWebServiceProducts_Model_GetMatchingProductRequest();
$request->setMarketplaceId(MARKETPLACE_ID);
$request->setASINList($asin_list);

invokeGetMatchingProduct($service, $request);
Run Code Online (Sandbox Code Playgroud)

获取请求的转储时,一切似乎都没问题,再次:

$parameters = $request->toQueryParameterArray();
var_dump($parameters);
Run Code Online (Sandbox Code Playgroud)

array(2){["MarketplaceId"] => string(13)"ATVPDKIKX0DER"["ASINList.ASIN.1"] => string(10)"B01BH9EXX2"}

MWS API文档不是很好.

谢谢

小智 13

试试以下....

打开您的MarketplaceWebServices-> model-> ResponseHeaderMetadata.php

查找并替换下面的代码

public function __construct($requestId = null, $responseContext = null, $timestamp = null,$quotaMax = null, $quotaMax = null, $quotaResetsAt = null){
Run Code Online (Sandbox Code Playgroud)

public function __construct($requestId = null, $responseContext = null, $timestamp = null,$quotaMax = null, $quotaRemaining = null, $quotaResetsAt = null) {
Run Code Online (Sandbox Code Playgroud)

:)


小智 5

除上述换行外,该行:

$this->metadata[self::QUOTA_REMAINING] = $quotaMax;
Run Code Online (Sandbox Code Playgroud)

应改为

$this->metadata[self::QUOTA_REMAINING] = $quotaRemaining;
Run Code Online (Sandbox Code Playgroud)

问候