我正在尝试使用Devise实现Oauth Twitter
我在twitter上创建了应用程序
我已将回调网址设置为: http://localhost:3000
我已将此添加到config \ initializers \ devise.rb
config.omniauth :twitter, "key", "key secret"
使用Twitter登录会自动显示在此路线:/ users / sign_up / 但点击它我得到这个错误
密钥和密钥是正确的
我也尝试删除并创建新应用。
我无法解决问题
非常感谢帮助
答案 0 :(得分:7)
事实证明,在Twitter应用设置中,回拨网址锁定默认设置为是。将其切换为否修复错误。
Thanks to kubido for helping me out to close the issue on github
答案 1 :(得分:3)
您可以尝试在https://apps.twitter.com/
的回拨网址中添加这些内容差不多一个小时后为我工作了!
登录失败后我收到了这些网址。我检查了request_options。一种方法是使用BetterErrors gem。
答案 2 :(得分:2)
我一直面临着同样的问题, 最终,我通过添加以下回调对其进行了修复,
http://127.0.0.1:3000/auth/twitter/callback
http://127.0.0.1/
http://127.0.0.1/auth/twitter/callback
http://localhost:3000/auth/twitter/callback
答案 3 :(得分:0)
好像Twitter的localhost / 127.0.0.1回调有问题,但是使用ngrok创建公共URL来公开我的本地服务器可以解决此问题。
启动ngrok:
ngrok http 3000
使用ngrok创建的HTTPS URL更新Twitter应用程序回调URL。
示例:
https://4e1ab946.ngrok.io/auth/twitter/callback
在端口3000上启动Rails服务器,然后将浏览器指向:
https://4e1ab946.ngrok.io/auth/twitter
现在应该工作。
答案 4 :(得分:0)
您需要将回调网址设置为:“您的网址” / auth / twitter / callback