Google OAuth 重定向 url 和 Heroku

Google OAuth redirect url and Heroku

我在 Heroku 托管的网站上通过 Google OAuth api 进行身份验证时遇到问题。

在我的本地主机上一切正常。 这是我在 google 开发控制台上的配置。

它适用于本地主机。 它不能在线工作。这是我得到的错误。

我试过使用 http 在一些关于堆栈溢出的旧线程中的建议,但它没有用。

我尝试在 google 控制台中更改允许的重定向 url 以包括端口,在这种情况下它起作用了。

问题是我不知道每次服务器重启时Heroku会使用哪个端口。

您知道这种情况的解决方法吗?

好吧,最后我没有弄清楚如何正确配置 Google...所以我所做的(并且有效)是从 return url:

const strategyConfig = {
  clientID: GOOGLE_CLIENT_ID,
  clientSecret: GOOGLE_SECRET_ID,
  callbackURL: process.env.NODE_ENV === "production"
    ? `${HOST}/${RETURN_URL}`
    : `${HOST}:${PORT}/${RETURN_URL}`,
  passReqToCallback: true,
};