RAILS PRESS RUBY on RAILS, it’s DRY and COOL …

RSS Feed

RAILS PRESS RSS

Tag Cloud

はてなブックマーク - railspress.matake.jp の注目エントリー
象形文字くさび形文字ミイラそろばんの玉そろばんコーラン占いの板?象牙大英博物館
Tagged by OAuth

Posted on
2008/12/27

Tags
OAuth, Yahoo, ノウハウ

0 Comment

この記事をはてなブックマークに登録 この記事のはてなブックマーク数 この記事を livedoor クリップに登録この記事の livedoor クリップ数 このエントリを del.icio.us に追加
ブックマークに追加する

ruby-oauth で Yahoo! OAuth を使う方法

ruby-oauth で Yahoo! OAuth を使おうとしてだいぶはまったので、対応方法をメモ。

まずは oauth_parameter のうち、値が空のものは送らないようにしないと行けないようです。これは Yahoo! 側の問題かな?この問題を解決するには、OAuth::Client::Helper をオーバーライドします。

LANG : RUBY
  1. # Yahoo! Hacks (for OAuth2.1)
  2. class OAuth::Client::Helper
  3.   def oauth_parameters
  4.     { 'oauth_consumer_key'     => options[:consumer].key,
  5.       'oauth_token'            => options[:token] ? options[:token].token : '',
  6.       'oauth_signature_method' => options[:signature_method],
  7.       'oauth_session_handle'   => options[:oauth_session_handle] ? options[:oauth_session_handle] : '',
  8.       'oauth_timestamp'        => timestamp,
  9.       'oauth_nonce'            => nonce,
  10.       'oauth_version'          => '1.0' }.reject { |k,v| v == "" }
  11.   end
  12. end

次に、Yahoo! OAuth では1時間ごとに token を再発行したり、その際に session_handle を使ったりするので、ruby-oauth の OAuth::AccessToken と OAuth::RequestToken をこれらの属性に対応させる必要があります。

» このエントリーには続きがあります。続きを読む »


Posted on
2008/12/23

Tags
API, Gem, OAuth, iKnow!, リリース

2 Comments

この記事をはてなブックマークに登録 この記事のはてなブックマーク数 この記事を livedoor クリップに登録この記事の livedoor クリップ数 このエントリを del.icio.us に追加
ブックマークに追加する

iKnow! gem 0.2.2

version 0.4.0 - version 0.1.1 までの更新履歴はこちら。
iKnow! gem version 0.1.1 - 京の路
iKnow! gem version up - OAuth & Basic認証 - 京の路

version 0.2.2 となり、ようやくこちらのブログでも発表できるレベルになりました。version 0.2.2 では、OAuth / Basic 認証のサポート、すべての要認証 API Call のサポートが追加されています。

OAuth / Basic 認証は同じインタフェースで使えます。Iknow::Auth に username と password を指定すれば Basic 認証、token と secret を指定すれば OAuth を使います。

LANG : RUBY
  1. iknow_auth = case auth_mode
  2.   when :oauth
  3.     Iknow::Auth.new(
  4.       :token => OAUTH_ACCESS_TOKEN,
  5.       :secret => OAUTH_ACCESS_TOKEN_SECRET
  6.     )
  7.   when :basic_auth
  8.     Iknow::Auth.new(
  9.       :username => IKNOW_USERNAME,
  10.       :password => IKNOW_PASSWORD
  11.     )
  12. end

あとは、要認証 API Call の第一引数に Iknow::Auth のインスタンスを渡してください。(※ 12月23日現在、OAuth の DELETE 系 Call がエラーになりますが、これは iKnow! API 側の問題です)

» このエントリーには続きがあります。続きを読む »


3分で iKnow! API アプリを作る方法 - iknow gem

前のエントリーでご紹介した iKnow! API 用の rubygem の使い方について。

Install iKnow! gem

レポジトリはこちら ⇒ nov-iknow@github

インストールは github を gem のソースに追加して(既に追加した人はもう追加しないように)

LANG : shell etc.
  1. sudo gem source -a http://gems.github.com

普通に gem install

LANG : shell etc.
  1. sudo gem install nov-iknow

これで、iKnow! API 経由のアクセスを、通常のモデルと同じ感じで使えるようになります。

» このエントリーには続きがあります。続きを読む »


OAuthタグ