# File lib/oauth/consumer.rb, line 182 def token_request(http_method, path, token = nil, request_options = {}, *arguments) response = request(http_method, path, token, request_options, *arguments) case response.code.to_i when (200..299) # symbolize keys # TODO this could be considered unexpected behavior; symbols or not? # TODO this also drops subsequent values from multi-valued keys CGI.parse(response.body).inject({}) do |h,(k,v)| h[k.to_sym] = v.first h[k] = v.first h end when (300..399) # this is a redirect response.error! when (400..499) raise OAuth::Unauthorized, response else response.error! end end