- 2008-04-20 (日)
- action script
AS3 で Amazon Web Services (AWS) を使って遊んでて、「和書」と「洋書」ストアの両方から「ActionScript」をキーワードに検索したいとする。どういうクエリを投げればいいのか?
通常は検索するストア(SerchIndex)に一つしか指定できないようです。いろいろ参考にさせていただいたところ、SearchIndex の複数指定& Shared を使ってこうやるらしい。
var url:String = "http://webservices.amazon.co.jp/onca/xml?"
+ "Service=AWSECommerceService&"
+ "AWSAccessKeyId=xxxxxxxxxxyourKeyIDxxxxxxxxxxxx&"
+ "Operation=ItemSearch&"
+ "ItemSearch.1.SearchIndex=Books&" //和書
+ "ItemSearch.2.SearchIndex=ForeignBooks&" //洋書
+ "ItemSearch.Shared.Keywords=ActionScript&"
+ "ItemSearch.Shared.ResponseGroup=Small";
レスポンスは各ストア10件がデフォルトだとすると、和書&洋書で20件返ってくる。URLエンコードした日本語キーワードを検索条件にすると和書ストアからだけ10件返ってくる。この時、洋書ストアからきちんとエラーが返ってきてるとこのページの最下端に記載されてる。試してみて Errors ノードを確認。
ちなみに、レスポンス(ResponseGroup)のタイプはカンマ区切りで複数指定できる。
別アプローチ(CartSimilarities)
「この商品を買った人は、こんな商品も買っています」のデータが欲しい時はCartSimilarities指定するのだけど、こちらのサイトを拝見した限り、この時はOperationをCartCreateにしないといけない。これだとImages指定ができなくなるので、2段階に分けて、まずItemSearchで商品を特定させてから、その書名のASINかOfferListingIdでCartCreateモードで再度別検索すると Amaznode みたいなことができるっぽい。全く確証ないけど。
var url:String = "http://webservices.amazon.co.jp/onca/xml?"
+ "Service=AWSECommerceService&"
+ "AWSAccessKeyId=xxxxxxxxxxyourKeyIDxxxxxxxxxxxx&"
+ "AssociateTag=xxxxx-22&" //おまけ:アソシエイトタグ入れ込み例
+ "Version=2008-04-07&" //おまけ:バージョン指定例。AWS4.0を使う場合大事。名前空間の日付も変わってくるので合わせて変更すること。
+ "Operation=CartCreate&"
+ "Item.1.ASIN=0000000000&" //ASIN か OfferListingId で指定
+ "Item.1.Quantity=1&"
+ "ResponseGroup=CartSimilarities";
別にAmaznodeを真似るつもりではなくて、別のものを作るつもりだけど気になったので。。
- Newer: 「ごはんとFlash」クリエイターズカフェイベント
- Older: ブログパーツ「常時.in」(超β)
Comment:0
Trackback:0
- TrackBack URL for this entry
- http://www.trick7.com/blog/mt-tb.cgi/727
- Listed below are links to weblogs that reference
- Amazon Web Services (AWS) での複数ストア(SerchIndex)指定法 from trick7.com blog



