Rakuten Web Service APIについて
商品検索APIについて
楽天商品検索API (version:2014-02-22)
token取得
API利用にtokenが必須
新規アプリ登録
Ruby関連
API形式
https://app.rakuten.co.jp/services/api/IchibaItem/Search/20140222?format=json&keyword=(エンコードしたキーワード)&applicationId=(アプリID/デベロッパーID)
最低限以下の2つがあれば商品検索できる
- アプリID
- 検索キーワード、ジャンルID、商品コード、ショップコードのどれか
本題のRailsでgem(rws-ruby-sdk)使用の例
Gemfile
gem 'rakuten_web_service'
rakuten.rb
config/initializers/rakuten.rb
config/initializers/rakuten.rb
RakutenWebService.configuration do |c|
c.application_id = 'アプリケーションID'
c.affiliate_id = 'アフィリエイトID'#任意
end
(注)下のコメントも参考にしてください
controller
使いたいコントローラーにメソッド追加
def search_rakuten_api(keyword)
items = RakutenWebService::Ichiba::Item.search(keyword: keyword)
images_arr = []
items.each do |item|
# したい処理
puts item['itemName'] #商品名
puts item['itemPrice'] #価格
puts item['itemUrl'] #商品のURL
end
end
複数条件で検索したい場合は
items = RakutenWebService::Ichiba::Item.search(keyword: keyword, hits: 10, ....)
みたいにすればOK
まとめ
githubみたら
class RakutenController < ApplicationController
def search
RakutenWebService.configuration do |c|
c.application_id = ENV["APPID"]
c.affiliate_id = ENV["AFID"]
end
result = RakutenWebService::Ichiba::Item.search(keyword: params[:jan]).first
render json: result
end
end
みたいにcontrollerにすべて書いている人もいた
どっちがいいかはわからない。