Net::HTTP
Net::HTTPでbodyにデータつめるときはset_form_data使ったほうがいいよ!
OAuthの認証エラーで2日はまった原因がNet::HTTP.post(url, body, header)につめるデータが違っていたせいだった。
set_form_dataの例
request = Net::HTTP::POST.new(path, headers) request.set_form_data({"content"=>"hoge"})
こんな感じでつかえばいい。
set_form_dataの中身はこんな感じ。
def set_form_data(params, sep = '&') self.body = params.map {|k, v| encode_kvpair(k, v) }.flatten.join(sep) self.content_type = 'application/x-www-form-urlencoded' end def encode_kvpair(k, vs) Array(vs).map {|v| "#{urlencode(k.to_s)}=#{urlencode(v.to_s)}" } end
かゆいとこに手が届く感じがいいんです!