Yih*_*uan 2 web-applications next.js dotenv
我正在使用 构建一个网络应用程序nextjs
。我添加了一些依赖项,例如Mux
和Firestore
。为了以有组织的方式存储 api_keys 和其他内容,我创建了.env
文件并将其放在根目录中。
.env
我检查了in的规则nextjs
。这是参考:https://medium.com/courtly-intrepid/environmental-variables-in-next-js-with-dotenv-599c5bbfdf74。我NEXT_PUBLIC
为变量添加了前缀,然后它们就成功解析了。
然而,在检查了nextjs
官方文档https://nextjs.org/docs/basic-features/environment-variables后,它说变量将暴露给browser。我对浏览器感到困惑。这是否意味着如果用户使用他/她的浏览器来使用我的应用程序,我的环境变量也会暴露给他/她?
我在想一件事,如果我将所有需要 dotenv 的代码放入后端,我可以使这些变量不提供给用户吗?对于当前版本,我在组件中使用了 dotenv,我认为这可能会导致前端用户看到变量? 需要 dotenv 的组件中代码的屏幕截图
PS:我是新来的。我没有足够的声誉来直接显示您的屏幕截图。而是使用链接。
小智 5
我建议您使用NEXT_PUBLIC
前缀,但如果您希望变量与前端保持 100% 隔离,您可以这样做:
创建并.env
归档:
TOKEN = 45354354353
Run Code Online (Sandbox Code Playgroud)
next.config.js
文件:
module.exports = {
env: {
TOKEN: process.env.TOKEN,
},
};
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1165 次 |
最近记录: |