Google rails 的 OmniAuth 给出错误 "Missing required parameter: client_id"

Google OmniAuth for rails giving error "Missing required parameter: client_id"

我需要一些帮助。

我已正确执行所有步骤以使用 omniauth 启用 Google 登录。

我的Config/Initializers/omniauth.rb

     require 'omniauth-google-oauth2'
     require 'dotenv'

        Rails.application.config.middleware.use OmniAuth::Builder do
        provider :google_oauth2,
        ENV["GOOGLE_APP_ID"],
        ENV["GOOGLE_APP_SECRET"]
.......

    end 

我的路线是正确的:

  get    '/auth/google_oauth2/callback', to: 'sessions#googleAuth'
  get    'auth/failure',                 to: redirect('/')
  get    'signout',                      to: 'sessions#destroy', as: 'signout'

我已正确保存凭据。

然而,当我点击 Google 登录重定向访问时,我仍然收到以下错误。

错误如下:

  1. That’s an error.

Error: invalid_request

Missing required parameter: client_id

Learn more

Request Details access_type=offline client_id= prompt=consent redirect_uri=http://localhost:3000/auth/google_oauth2/callback response_type=code

为什么我会收到缺少的 client_id 错误,当我的项目在 Google 控制台上正确设置时,其他一切都很好。

请帮我解决这个问题。

谢谢!

嘿,谢谢大家的评论。

我可以通过添加

来解决它
Dotenv.load 

到Omniauth.rb