Rubyで2Legged OAuthリクエストを行う

TwitterAPIを叩くサンプルは見つかったけど、純粋な2Legged OAuthのやり方が見つからなかった。
だからメモ。
 
リクエストボディを指定して、リクエストを送る前にoauth!メソッドを呼ぶだけ。

#!/usr/bin/ruby

require 'rubygems'
require 'net/http'
require 'oauth'

consumer = OAuth::Consumer.new('CONSUMER_KEY', 'CONSUMER_SECRET')

http = Net::HTTP.new('g-storage.appspot.com', 80)
req = Net::HTTP::Post.new('/storage')
req.set_form_data({:method => :ls, :format => :json})
req.oauth!(http, consumer)
res = http.request(req)

puts res.code
puts res.body