我正在尝试在我正在处理的应用程序中使用 Devise 和 omniauth 设置 Google+ 登录,但遇到了 OAuth::未经授权的 400 错误。我正在使用全能谷歌宝石。我的 Devise 配置为 Google 设置了全能身份验证:
config.omniauth :google, ENV['GOOGLE_KEY'], ENV['GOOGLE_SECRET'], scope: 'plus.login'
我在 dev.app.com:3000 本地运行该网站,在 Google 开发者控制台的应用设置中,我将 JavaScript 源设置为 http://dev.app.com:3000,重定向 URI 设置为 http://dev.app.com:3000/users/auth/google/callback。我已经确认我的密钥和秘密是正确的。这里有什么问题?
我在那里没有看到任何问题,您可以通过本教程获得更好的图片[https://www.digitalocean.com/community/tutorials/how-to-configure-devise-and-omniauth-for-your-rails-application
或者你可以试试
Omniauth-google-oauth2
https://github.com/zquestz/omniauth-google-oauth2
Google 的 omniauth-google 1.0 策略已被弃用。也就是说,您的配置似乎没有任何问题。
你最好切换到OAuth 2.0,除非你有非常令人信服的理由不这样做。请注意,提供程序符号已从 :google
更改为 :google_oauth2
。切换后,它应如下所示:
provider :google_oauth2, ENV["GOOGLE_KEY"], ENV["GOOGLE_SECRET"]