Я интегрирую 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
Он дает десять продуктов с соответствующим запросом. Но когда я хочу перейти на страницу сведений о продукте в своем приложении и показать соответствующие сведения в своем приложении, мне нужен ItemId этого продукта, как указано в документах vaccum.
response = request.item_lookup(
query: {
'ItemId' => '0679753354'
}
)
Но я не могу получить этот идентификатор. Когда я пишу ItemId
или ItemIds
в группе ответа, я этого не понимаю, хотя это атрибут, который можно записать в ResponseGroup в соответствии с Amazon Docs. Мне нужно, чтобы этот ItemId для операции цикла элемента был выполнен, чтобы я получал обзоры и другие сведения, относящиеся к этому продукту, отдельно.