RubygemsのOAuthライブラリを使用して、TwitterアプリのOAuth認証の登録を行う手順です。
ここで取得したトークン等を利用することで、OAuth認証を利用したTwitterクライアントを作成することが出来ます。
1. RubygemsのOAuthをインストールする
$ sudo gem install oauth
2. Twiiter側でアプリの登録を行う
認証済みの状態でTwitterの開発者サイト(http://dev.twitter.com/)にアクセスし、Registaer an app でアプリの登録をします。
次に、Register an Applicationという画面で必要な項目を記入します。主な項目は以下の通りです。
項目 | 説明 |
---|---|
Application Name | アプリの名前です |
Description | アプリの説明です。ある程度文字数が無いとエラーになります |
Application Website | アプリについてのWEB等があればそれを記載します。自分のBlogでもよいでしょう。 |
Application Type | ブラウザから使用するかどうかを指定します。Bot等のアプリの場合はClientになります。 |
Default Access type | 読み取りのみか、更新もするかを指定します。 |
登録後、設定確認画面でCONSUMER KEYとCONSUMER SECRETを確認します。
3. 以下のプログラムを実行する
CONSUMER_KEYとCONSUMER_SECRETは、上記でメモしたものを指定します。
require 'rubygems' require 'oauth' CONSUMER_KEY = "xxxxx" CONSUMER_SECRET = "xxxxxxxxxxxxxx" consumer = OAuth::Consumer.new(CONSUMER_KEY, CONSUMER_SECRET, :site => "http://api.twitter.com") request_token = consumer.get_request_token print "access to #{request_token.authorize_url}\n" # ここで表示されたURLにアクセスし、アプリからのアクセスを「許可」する print "input pin: " oauth_verifier = gets oauth_verifier.chomp! access_token = request_token.get_access_token(:oauth_verifier => oauth_verifier ) print "access_token = #{access_token.token}\n" print "access_secret = #{access_token.secret}\n"
access to の後にURLが表示され、入力待ちとなりますので、表示されたURLにアクセスします。すると、以下のような許可画面が表示されるので、「アプリを認証」します。
すると以下のようにPINが表示されるので、コンソールに戻ってPINを入力します。
最後に、ACCESS TOKENとACCESS SECRETが表示されるので、これを記録しておきます。
以上で、
- CONSUMER_KEY
- CONSUMER_SECRET
- ACCESS TOKEN
- ACCESS SECRET
が取得できますので、これらを使ってOAuth認証を実施します。