我以为我会玩OAuth来学习,而且我有一些问题试图让它发挥作用。关于500px的开发者页面上没有太多信息以及我在Google上搜索过的所有信息还没有解决我的问题,希望我能在这里找到答案。因为我被卡住了,所以我能得到的任何帮助都会非常感激!
我一直收到的错误是401 Unauthorized
我已经设置了一个TestController来搞乱API。
class TestController < ApplicationController
def index
consumer = OAuth::Consumer.new("KEY", "SECRET",
:site => "https://api.500px.com",
:request_token_path => "/v1/oauth/request_token",
:access_token_path => "/v1/oauth/access_token",
:authorize_path => "/v1/oauth/authorize")
session[:consumer] = consumer
session[:request_token] = session[:consumer].get_request_token(:oauth_callback => "http://localhost:3000/auth/500px/callback")
redirect_to session[:request_token].authorize_url
end
def callback
session[:oauth_token] = params["oauth_token"]
session[:oauth_verifier] = params["oauth_verifier"]
session[:access_token] = session[:consumer].get_access_token(session[:request_token], :oauth_token => session[:oauth_token], :oauth_verifier => session[:oauth_verifier])
end
end
答案 0 :(得分:2)
我明白了。问题是在我的URL中它是localhost:3000,在我的回调URL中它是127.0.0.1:3000。想象他们会是相同但不是这样。一旦我将回调URL更改为localhost:3000,它就可以工作了。我已经为使用500px api的未来的任何人更新了代码。