localhost redirect_uri 不适用于 Google Oauth2(导致 400:invalid_request 错误)

Fun*_*ang 6 google-oauth passport-google-oauth

Google Cloud Platform oauth 服务最近进行了更新,强制所有重定向 URI 严格使用 HTTPS。但是,本地主机 url 应该被豁免,并且允许使用 http。更一般地说,验证规则在这里

此后,我对公司的一些内部 Node Web 应用程序进行了更新,以符合新的 oauth 更改,并且它们在部署后可以完美运行。

我的问题是本地开发(在 http://localhost:4000 上)。每当我尝试在本地主机上通过 Google 登录时,都会收到模糊的 400 invalid_request 错误,指出我的应用程序不符合安全验证规则(已引用)。他们还为我提供了超链接到他们文档中有关安全性和 HTTPS 的部分。我坚信我的redirect_uri符合他们的安全标准(http://localhost:4000/login/google/callback)。我也绝对确定我在 Google 控制台凭据部分中的配置正确(无论如何,任何不匹配都将是一个 redirect_uri_mismatch 错误)。请告诉我我是否在这里遗漏了什么?我使用“passport-next/passport-google-oauth2”中间件包,同样,部署应用程序时没有任何问题。

我最近还注意到这里的其他几个人也有类似的未解决问题:

  1. 来自本地主机的 google oauth 抛出无效请求错误(我不完全理解第一个答案/我不明白它是如何相关的)
  2. 在本地使用 google oauth 2-0 时出现错误 400 无效请求(无答案)

DaI*_*mTo 3

生产中的应用程序可能没有本地主机重定向 uri。

将其切换回测试或使用另一个正在测试的项目。以下重定向 uri 对于生产中的项目无效

http://localhost:4000 
Run Code Online (Sandbox Code Playgroud)

根据评论请求更新文档

重定向 URI 验证规则

在此输入图像描述