我正在使用rails 3.2上的设计与twitter作为omniauth策略。 为了在没有再次授权应用程序的情况下登录返回的用户,我想使用twitters authenticate方法Twitter API documentation 所以我需要打电话给“https://api.twitter.com/oauth/authenticate”。
但设计始终使用https://api.twitter.com/oauth/authorize,即使我在初始化程序中明确设置它。
config.omniauth :twitter, 'zsJ66OoLL1xmFNfDG+ifA', 'crRo2Gxi2wFmw3b3XXXXXX',
:client_options => {:authorize_path => '/oauth/authenticate'}
此外,omniauth twitter gem使用“options.client_options.authorize_path ='/ oauth / authenticate'”验证网址。 所以我不知道为什么设计使用授权网址。
有人知道如何强制使用身份验证网址吗?
显然这似乎是一个Twitter问题,因为我发现twitter正在重定向到授权URL事件,尽管我的用户仍然在Twitter上登录..
答案 0 :(得分:0)
我只是偶然发现了推特上的这篇文章解释了这个问题
更改“使用Twitter登录”流程
此更改仅允许自动重定向请求它的应用程序。使用/ oauth / authenticate并依赖登录用户的自动重定向行为的应用程序必须启用此“使用Twitter登录”选项。如果未启用该选项,则会将用户定向到/ oauth / authorize,然后将提示用户完成应用程序批准流程。