设计Oauth Twitter:OAuth ::未经授权的禁止403
我正在尝试使用Devise实现Oauth Twitter。
我在twitter上创建了应用程序
我已将回调url设置为: http:// localhost:3000
我已将此添加到config \ initializers \ devise.rb
config.omniauth :twitter, "key", "key secret"
使用Twitter登录会自动出现在此路线:/ users / sign_up /但点击它时我收到此错误
密钥和密钥是正确的
我也尝试删除和创建新的应用程序。
我无法修复它
非常感谢帮助
这里说它需要设置https。 所以我按照这个来设置它。 但得到同样的错误
事实certificate,在twitter app设置中,默认情况下Callback URL Lock设置为Yes 。 将其切换为No修复错误。
感谢kubido帮我解决了github上的问题
您可以尝试在https://apps.twitter.com/的回拨url中添加这些内容
- HTTP://本地主机:3000 /认证/叽叽喳喳/回调
- http://127.0.0.1:3000/
- http://127.0.0.1:3000/auth/twitter/callback
差不多一个小时后为我工作了!
登录失败后我收到了这些URL。 我检查了request_options。 一种方法是使用BetterErrors gem。
我一直面临同样的问题,最终我通过添加以下回调修复它,
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
它就像一个魅力,
似乎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
应该现在工作。
- Facebook应用程序 – 通过omniauth登录 – OAuthException 191
- omniauth(自定义策略)/门卫的法拉第超时错误
- Omniauth-facebook登录无法正常工作
- Rails 4,Devise,Omniauth(有多个提供商)
- 未定义的方法’更改’为:更新时间戳值时的Fixnum
- OmniAuth不适用于Rails3中的Route Globbing
- 访问Google Plus联系人google-api-ruby-client和omniauth-google-oauth2
- 将设计和omniauth处理为失败的Google oauth2
- 允许用户在使用Twitter登录时输入他们的电子邮件(OmniAuth)