Google OAuth2:错误 401 - invalid_client

Cap*_*irk 5 heroku google-oauth

我正在 Heroku 上部署一个使用 Google OAuth2 的应用程序。当我测试应用程序时,我转到身份验证网址 (/auth/google),并看到以下错误消息(请注意,我将域名替换为 *** 只是为了在此处发布:

\n\n
\n
    \n
  1. 那\xe2\x80\x99 是一个错误。
  2. \n
\n\n

错误:无效_客户端

\n\n

未找到 OAuth 客户端。

\n\n

请求详细信息response_type=code\nredirect_uri=https://****.com/auth/google/callbackscope=profile email\nclient_id=process.env.GOOGLE_CLIENT_ID\xe2\x80\x99s是我们所知道的。

\n
\n\n

我在发布之前查看了以下问题,并尝试调试了几个小时:

\n\n

错误:Google Apps API OAuth2 的 invalid_client

\n\n

谷歌oauth2中的invalid_client

\n\n

我尝试执行以下操作:

\n\n
    \n
  1. 确保 Heroku 中的值前后没有空格

  2. \n
  3. Google 控制台中的同意屏幕已填写完整的姓名和电子邮件地址

  4. \n
  5. 我已在 Google Console 中重命名该应用程序

  6. \n
  7. 我已从 Heroku 中删除了键/值并重新创建

  8. \n
\n\n

尽管如此,我还是无法解决这个问题。关于我可能缺少什么的任何想法?

\n

pin*_*yid 9

答案就在问题里。

Google 找不到对您的客户端的任何引用,该客户端由网址中的 client_id 标识。您指定的 client_id 为“process.env.GOOGLE_CLIENT_ID”,而不是有效的 client_id(类似于“40740878192.apps.googleusercontent.com”)。它看起来像是代码中的一个错误,您没有使用 process.env.GOOGLE_CLIENT_ID 作为变量,而是将其用作文字。