我在Tumblr的oauth实现中遇到了一个有趣的问题,我想为其他人编写文档。当我使用下面的代码时,我收到了一个"400坏请求“,当我检查wireshark中的应答时,我发现这是从tumblr返回的”带外(Oob)回调“,这个实现不支持回调。这是wwierd,因为我的tumblr应用程序有一个已显式设置的回调字段。
# Your tumblr details:
key = "Your Key"
secret = "Your Secret"
site = "http://www.tumblr.com"
# puts 'Setting up request'
@consumer = OAuth::Consumer.new(key, secret, { :site => site,
:request_token_path => '/oauth/request_token',
:authorize_path => '/oauth/authorize',
:access_token_path => '/oauth/access_token',
:http_method => :post
})
puts 'Asking for token, dies here.'
@request_token = @consumer.get_request_token()
puts 'Got Token Storing'
session[:request_token]=@request_token
puts 'Redirecting'
redirect_to @request_token.authorize_url发布于 2013-11-23 06:20:06
事实证明,tumblr的api中的回调字段没有被考虑在内。
您需要更改这一行:
@request_token = @consumer.get_request_token()将是:
@request_token = @consumer.get_request_token(:oauth_callback => "http://192.168.2.115:5000/oauth/callback")这似乎让一切都成功了。
https://stackoverflow.com/questions/20159310
复制相似问题