gpt4 book ai didi

node.js - 如何在开发和生产中设置 dotenv?

转载 作者:行者123 更新时间:2023-12-03 12:13:37 28 4
gpt4 key购买 nike

在我的 Express JS API 服务器中,我尝试使用带有 .env 的 dotenv我的环境设置文件。

我更喜欢使用 .env用于开发和生产环境的文件。

我正在使用 nodemon 进行开发,目前如果我包含 -r dotenv/config在 package.json > 启动脚本:

    "scripts": {
"start": "nodemon --exec babel-node -r dotenv/config index.js"
}
process.env 中的变量设置正确在应用程序的任何地方

但是,如果我使用脚本在 index.js 中配置 dotenv像这样:

import dotenv from 'dotenv'
// Environment variables
dotenv.config()

似乎 process.env仅在 index.js 页面中配置,我无法获取 process.env我的中间件逻辑中的变量?
我放了 dotenv.config()在中间件执行之前的最开始执行

我的问题是:
1.是我使用 dotenv.config()的逻辑吗?不正确的设置?为什么我的中间件无法获得相同的变量?
2. 如何设置 process.env.env 读取的变量开发和生产的文件? (我可能会使用 webpack 来打包我的生产版本)

谢谢你的帮助。

最佳答案

您可能还有其他 import dotenv.config() 之前的语句行,这些模块将无权访问配置的环境变量

代替

import dotenv from 'dotenv'
dotenv.config()

您可以使用

import 'dotenv/config'

或使用以下命令启动您的应用程序,类似于您设置开发环境的方式。如果您的转译输出位于 build目录:
node --require dotenv/config build/index.js

引用:

https://www.npmjs.com/package/dotenv#how-do-i-use-dotenv-with-import-

关于node.js - 如何在开发和生产中设置 dotenv?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61358899/

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