gpt4 book ai didi

javascript - 如何在 react 应用程序和将其作为静态站点托管的快速 js 服务器之间共享环境变量

转载 作者:行者123 更新时间:2023-12-01 15:28:09 25 4
gpt4 key购买 nike

我在名为 client/build 的文件夹中的 express 服务器项目下有一个作为静态站点托管的 react 应用程序。我有一些 oauth 重定向 uri,指向 express 服务器也指向稍后的 token 检索。我的 react-app 将用户重定向到我的 express 服务器环境变量也引用的 oauth 端点。

    ` //express .env :
process.env.HOST=localhost
process.env.PORT=port
process.env.OAUTH2URI=example.com
`
` //react .env :
process.env.REACT_APP_HOST=localhost
process.env.REACT_APP_PORT=port
process.env.REACT_APP_OAUTH2URI=example.com
`

当我运行我的 express 应用程序时,react 应用程序如何引用我的 express 服务器应用程序正在使用的同一主机和端口?

我可以不将 express 应用程序中的公共(public)环境变量引用到 react 应用程序而不用不同的名称复制吗?

最佳答案

我尝试了很多东西,但似乎都没有奏效。
我为此做的解决方法是在 Express 中创建一个 API,该 API 将由前端调用并转发 env var。
类似的东西:

app.get('/getEnvironmentVars', (_, res) => {
res.json({ ENVIRONMENT: process.env })
})
然后你只需在前端代码中获取它,例如:
export async function getEnvironmentVarsFromExpress() {
return await fetch('/getEnvironmentVars').then((res) => res.json())
}

关于javascript - 如何在 react 应用程序和将其作为静态站点托管的快速 js 服务器之间共享环境变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60626805/

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