设计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错误更改被拒绝
- Gitlab和omniauth-pam身份validation
- 请求的资源上不存在“Access-Control-Allow-Origin”标头
- Devise中的ArgumentError :: RegistrationsController#新错误的参数个数(2个为0..1)
- 如何将/ auth /:provider中的omniauth路由更改为/ myapp / auth /:provider
- 有没有人使用omniauth与rails 2.3.8?
- 与Devise on Rails一起使用单独的身份validation模型
- OmniAuth Google OpenID WEBrick :: HTTPStatus :: RequestURITooLarge
- 使用Koala(Ruby)收集用户的新闻源