【问题标题】:Google OAuth2: Error 401 - invalid_clientGoogle OAuth2:错误 401 - invalid_client
【发布时间】:2018-12-13 05:07:24
【问题描述】:

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

  1. 这是一个错误。

错误:invalid_client

未找到 OAuth 客户端。

请求详情 response_type=code redirect_uri=https://****.com/auth/google/callback scope=profile 电子邮件 client_id=process.env.GOOGLE_CLIENT_ID 这就是我们所知道的。

发帖前看了以下几个问题,试了好几个小时调试:

Error: invalid_client with Google Apps API OAuth2

invalid_client in google oauth2

我已尝试执行以下操作:

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

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

  3. 我已在 Google 控制台中重命名了应用程序

  4. 我已经从 Heroku 中删除了键/值并重新创建了

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

【问题讨论】:

    标签: heroku google-oauth


    【解决方案1】:

    答案就在问题中。

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

    【讨论】:

    • 谢谢@pinoyyid!看起来这确实是问题所在 - 我不小心将变量包裹在双引号中。感谢您的帮助!
    • 我遇到了完全相同的问题,我已按照与此问题发布者相同的步骤进行操作,但我的客户端 ID 实际上是客户端 ID,而不是显示“CLIENT_ID”的字符串。有什么想法吗?
    猜你喜欢
    • 2014-07-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-18
    • 1970-01-01
    • 2017-07-01
    相关资源
    最近更新 更多