我们已经连接到Linkedin一段时间,现在已经成功。但是,我们不时会发现一些错误,我希望有人能够帮助解决这个问题。下面是我们的代码:Linkedin Oauth with Rails
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值,我已经尝试了很多次,并且都带回了一些东西。我们每天都会收到很多。出现错误后,如果用户再次尝试,它可以正常工作,这就是为什么我很困惑。
有什么想法可能导致这种情况?