我正在尝试将所有产品定价在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中的内容。它返回了一堆其他不必要的东西。任何帮助表示赞赏!
注意:它还会退回不符合价格范围的产品。这些问题可能是相关的。任何提示都会有所帮助。
答案 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"的回答)。