Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/api/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Api 轨道&x2B;Oauth+;Tumblr_Api_Oauth_Callback_Ruby On Rails 4_Tumblr - Fatal编程技术网

Api 轨道&x2B;Oauth+;Tumblr

Api 轨道&x2B;Oauth+;Tumblr,api,oauth,callback,ruby-on-rails-4,tumblr,Api,Oauth,Callback,Ruby On Rails 4,Tumblr,我在Tumblr的oauth实现中遇到了一个有趣的问题,我想为其他人记录这个问题。当我使用下面的代码时,我收到一个“400错误请求”,当我检查wireshark中的响应时,我发现这是从tumblr返回的“此实现不支持带外(“oob”)回调”。这是wwierd,因为我的tumblr应用程序有一个我显式设置的回调字段 # Your tumblr details: key = "Your Key" secret = "Your Secret" site = "http://www.tumblr.com

我在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

事实证明,tumblr的api中的回调字段并没有被考虑在内

您需要更改此行:

@request_token = @consumer.get_request_token()
将是:

@request_token = @consumer.get_request_token(:oauth_callback => "http://192.168.2.115:5000/oauth/callback")
这似乎使一切都起作用了