ECS4.0をRESTで叩いてみる(その1)

http://diaspar.jp/node/5
http://www.microstory.org/gakusi/wiki/RubyAWSMemo.html
を参考にさせてもらい、とりあえずWidgetsControllerのshow()にコード片を入れて実行。

require 'net/http'
require 'rexml/document'
require 'kconv'
include REXML 

(中略)

address = "webservices.amazon.co.jp"
path = "/onca/xml?Service=AWSECommerceService" +
  "&AWSAccessKeyId=ほげほげID" +
  "&ResponseGroup=Medium" +
  "&Operation=ItemSearch" +
  "&SearchIndex=Books" +
  "&Keywords=" + @widget.searchConditions[0].keyword
&ResponseGroup=Medium&Operation=ItemSearch&SearchIndex=Books&Keywords=" + @widget.searchConditions[0].keyword
body = Net::HTTP.get( address , path ) 

doc = Document.new body
doc.elements.each("ItemSearchResponse/Items/Item") { |item| 
  str = item.text("ItemAttributes/PublicationDate") + "\t" + item.text("ItemAttributes/Title")
  puts str.kconv(Kconv::SJIS, Kconv::UTF8)
}

するとRadRailsのコンソールに以下のように出てくる。

2006-07-07	日本沈没 第二部
2005-04-06	小説名探偵コナン―甲州埋蔵金伝説
2005-09-22	ジャンキー・ジャンクション
2005-10-25	遠き雪嶺(下)
2005-10-25	遠き雪嶺(上)
2006-05	エミリーの記憶
1999-04	宇宙(そら)への帰還―SFアンソロジー
1996-11	終わりなき索敵〈下〉航空宇宙軍史
1996-11	終わりなき索敵〈上〉航空宇宙軍史
2001-03	果てなき蒼氓

基本部分は成功。続きはまた。