我正在将 Amazon Product Api 集成到我的 rails 应用程序中。我正在使用真空宝石进行这种集成。有两个主要页面。我正在通过此代码获取产品。
requestd = Vacuum.new
requestd.configure(
aws_access_key_id: ENV["AWS_ACCESS_KEY_ID"],
aws_secret_access_key: ENV['AWS_SECRET_ACCESS_KEY'],
associate_tag: ENV['ASSOCIATE_TAG']
)
response = requestd.item_search(
query: {
'SearchIndex' => @category.search_index,
'Keywords' => @category.keyword,
'ResponseGroup' => "ItemAttributes,Images"
}
)
hashed_products = response.to_h
@products = []
hashed_products['ItemSearchResponse']['Items']['Item'].each do |item|
product = OpenStruct.new
product.name = item['ItemAttributes']['Title']
product.price = item['ItemAttributes']['ListPrice']['FormattedPrice'] if item['ItemAttributes']['ListPrice']
product.url = item['DetailPageURL']
product.feature = item['ItemAttributes']['Feature']
product.image_url = item['LargeImage']['URL'] if item['LargeImage']
product.link = item['ItemLinks']['ItemLink'][5]['URL']
@products << product
end
它提供了十种具有匹配要求的产品。但是,当我想转到我的应用程序中产品的详细信息页面并在我的应用程序中显示其各自的详细信息时,我需要 vaccum 文档中给出的该产品的 ItemId。
response = request.item_lookup(
query: {
'ItemId' => '0679753354'
}
)
但我无法获取此 ID。当我写ItemId
或ItemIds
在响应组中时,我不明白这一点,尽管这是可以根据 Amazon Docs 写入 ResponseGroup 的属性。我需要该 ItemId 来执行项目循环操作,以便分别获得与该产品相关的评论和其他详细信息。