【Ruby】Ruby で Amazon Product Advertizing API を使う ~その2~【AWS】
前回の続き
RubyでWEBサービスを作るにはRailsを使うのが良いらしい。
Ruby on Rails(ルビーオンレイルズ)はオープンソースのWebアプリケーションフレームワークである。RoRまたは単にRailsと呼ばれる。その名にも示されているようにRubyで書かれている。またModel View Controller(MVC)アーキテクチャに基づいて構築されている。(Wikipedia参照:http://ja.wikipedia.org/wiki/Rails)
このフレームワークの基盤に沿って自分の好きなプログラムを書けば、作りたいものが作れるらしい。
今回はRailsでAmazon Product Advertizing API を使ってAmazonの商品情報を使ったサービスを作ることができればいいな〜っと。
今回使用したRailsのバージョンはRails 3.1.1 。
Railsでのアプリケーションの作成
$ rails new aws
上記のコマンドでRailsのアプリケーションを作成する。
今回はawsというアプリ名で作成した。
実行するとカレントディレクトリの中にawsというディレクトリが作られ、そのディレクトリ以下に様々なものが作られているはず...
Gemfileへの追記
Rails内でRubyの標準パッケージ以外のパッケージを使用する場合には、アプリケーションの一番上のディレクトリ内のGemfileへ
gem 'ruby-aaws'
と追加する。
これは 'ruby-aaws' というパッケージを追加するための追記内容。
前の記事で書いた通り、これはAmazon Product Advertizing APIを使用するためのパッケージ。
RailsでパッケージAWSを使用する
rubyでパッケージAWSを使用したいので、前の記事のように
設定ファイル.amazonrcをコントローラーと同じディレクトリapp/controller/に置き、
app/controller/aws_controller.rbの中に
# coding: utf-8 ENV['AMAZONRCDIR'] = './' ENV['AMAZONRCFILE'] = '.amazonrc' require 'amazon/aws' require 'amazon/aws/search' include Amazon::AWS include Amazon::AWS::Search class AwsController < ApplicationController def index render :text => 'aws のトップページです。' end end
とAPIが使用できる様に設定ファイルをインポートしてみたが、エラーが出てAPIが使用できない。
Railsの一番上のディレクトリ構造を眺めていたら、一番上のディレクトリの中にconfigというディレクトリが存在した。
もしかしてここに設定ファイルを入れればいいのかな?と思い、設定ファイル.amazonrcファイルを入れてみる。
それに伴い、aws_controller.rbの設定ファイルの読み込み部分も書き換える。
ENV['AMAZONRCDIR'] = 'config' ENV['AMAZONRCFILE'] = '.amazonrc'
すると、APIがうまく使えた!めでたしめでたし。