Amazon Product API不尊重ResponseGroups

时间:2013-03-13 22:17:41

标签: api node.js amazon-web-services amazon amazon-product-api

我正在尝试将所有产品定价在12.50和11.50之间。我正在使用Node-APAC来处理我对Amazon Product 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。您可以看到一些完整的回复here(这是巨大的)。这是结构:

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

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


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

1 个答案:

答案 0 :(得分:2)

根据Amazon Product Advertising doc for the ItemSearch operation,MinimumPrice(相应的MaximumPrice)“指定要退货的商品的最低价格(最高价格)。价格以最低货币面额计算,例如,便士,例如,3241代表$ 32.41。“。

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

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

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

价格过滤应该有效。对于ResponseGroup,我建议你传递“Small,OfferSummary”(根据我对你的问题"How to specify what Amazon Product API returns"的回答)。