1

我试图让所有产品的价格在 12.50 到 11.50 之间。我正在使用Node-APAC来处理我对 Amazon 产品 API 的请求。这是我的请求代码:

exports.search = function(req, res){

  OperationHelper = require('apac').OperationHelper;

  var opHelper = new OperationHelper({
      awsId: process.env.AMZ_ACCESS_KEY_CODE,
      awsSecret: process.env.AMZ_SECRET_ACCESS_KEY,
      assocId: process.env.AMZ_ASSOCIATE_ID
  });

  opHelper.execute('ItemSearch', {
      'SearchIndex': 'All',
      'Keywords': ' ',
      'MaximumPrice': 12.50,
      'MinimumPrice': 11.50,
      'ResponseGroup': 'Medium'
  }, function(error, results) {
     res.send(results);
  });
};

响应不会将结果限制为Medium ResponseGroup你可以在这里看到一些完整的回应(它是巨大的)。这是结构:

{
    ItemSearchResponse: {
        $: {...},
        OperationRequest: [...],
        Items: [
            {
                Request: [...],
                TotalResults: [...],
                TotalPages: [...],
                MoreSearchResultsUrl: [...],
                Item: [
                    {
                        ASIN: [...],
                        DetailPageURL: [...],
                        ItemLinks: [...],
                        SmallImage: [...],
                        MediumImage: [...],
                        LargeImage: [...],
                        ImageSets: [...],
                        ItemAttributes: [...],
                        OfferSummary: [...]
                    },
                    {...},
                    {...},
                    {...},
                    {...}
                ]
            }
        ]
    }
}

它没有返回文档所说的应该包含在 Medium ResponseGroup 中的内容。它返回了一堆其他不必要的东西。任何帮助表示赞赏!


注意:它也会退回不符合价格范围的产品。这些问题可能是相关的。那里的任何提示都会有所帮助。

4

1 回答 1

2

根据ItemSearch 操作的亚马逊产品广告文档,“MinimumPrice (resp.MaximumPrice)”指定要退货的商品的最低(或最高)价格。价格以最低货币面值表示,例如,美分,对于例如,3241 代表 32.41 美元。”。

因此,如果您更改以下两个参数的值:

'MaximumPrice': 12.50,
'MinimumPrice': 11.50,

'MaximumPrice': 1250,
'MinimumPrice': 1150,

价格过滤应该起作用。至于 ResponseGroup,我建议您通过“Small,OfferSummary”(根据我对您的问题“如何指定亚马逊产品 API 返回的内容”的回答)。

于 2013-03-17T01:07:55.617 回答