【发布时间】:2012-03-10 22:09:05
【问题描述】:
我们已经成功连接到 Linkedin 一段时间了。但是,我们不时会遇到一些错误,我希望有人可以帮助阐明这一点。这是我们的代码:
def linkedin_login
request_token = Linkedin.client.request_token(oauth_callback: "http://#{SITE_URL}/linkedin/auth/")
session[:linkedin_request_token] = request_token.token
session[:linkedin_request_secret] = request_token.secret
redirect_to request_token.authorize_url
end
def linkedin_auth
raise "Don't have proper session or oauth_verifier" if session[:linkedin_request_token].blank? or session[:linkedin_request_secret].blank? or params[:oauth_verifier].blank?
access_token = Linkedin.client.authorize_from_request(session[:linkedin_request_token], session[:linkedin_request_secret], params[:oauth_verifier])
raise "Nil access token" if access_token.blank?
redirect_to linkedin_process_path(token: access_token.first, secret: access_token.second)
end
我们比我预期的更多地点击“提高'没有适当的会话或 oauth_verifier'”。在查看 ENV 中的错误时,这些人没有从原始方法设置会话值。我们在应用程序控制器上设置了 before_filters,所以初始化会话,所以我知道它是活动的。
我的下一个想法是“request_token”是否正在生成一个值 request_token,我已经尝试了很多次,它们都带来了一些东西。我们一天会收到很多这样的东西。报错后,如果用户再试一次,它就可以正常工作,这就是我如此困惑的原因。
有什么想法会导致这种情况吗?
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-3 oauth linkedin