gpt4 book ai didi

使用动态主机的 Node.js GitHub oAuth 回调?

转载 作者:太空宇宙 更新时间:2023-11-04 02:37:57 26 4
gpt4 key购买 nike

我一直在制作一个 Node 应用程序,它使用 GitHub 通过 Passport.js 进行身份验证。

最近我把我的应用程序放在heroku上,现在我似乎只能在he​​roku或localhost上进行身份验证,而不能同时在两者上进行身份验证...

GitHub 有一个定义的回调参数:

如何使其通用,以便在我使用公共(public)实例或本地测试时它可以工作?

我的授权代码直接取自 Passport-github 示例:

passport.use(new ghStrat({
clientID: GITHUB_CLIENT_ID,
clientSecret: GITHUB_CLIENT_SECRET,
callbackURL: "/auth/github/callback"
},
function(accessToken, refreshToken, profile, done) {
...

有什么想法吗?

最佳答案

您必须创建多个 key ,然后根据环境进行切换。有些人使用 process.env.NODE_ENV 来确定它们是否在生产中运行,并据此选择配置文件。

您可以在heroku上将NODE_ENV设置为“生产”

https://devcenter.heroku.com/articles/getting-started-with-nodejs#setting-node_env

并在代码中打开 NODE_ENV

var config

if (process.env.NODE_ENV === "production") {
config = require("./config.production.json")
} else {
config = require("./config.dev.json")
}

两个配置文件的样子

{
"clientId": "...",
"clientSecret": "...",
"callbackURL": "local or production uri"

}

关于使用动态主机的 Node.js GitHub oAuth 回调?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20304583/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com