如何从 Node.js 中读取环境变量

Node.js 的 process 核心模块提供了一个 env 属性,它包含了进程启动时设置的所有环境变量。

以下代码运行 app.js 并设置 USER_IDUSER_KEY

USER_ID=239482 USER_KEY=foobar node app.js

这将传递用户 USER_ID239482USER_KEYfoobar。这适合测试,但对于生产环境,您可能需要配置一些 bash 脚本来导出变量。

注意:process 不需要 "require",它会自动可用。

以下示例访问了 USER_IDUSER_KEY 环境变量,我们在上面的代码中设置了它们。

process.env.USER_ID; // "239482"
process.env.USER_KEY; // "foobar"

同样,您可以访问您设置的任何自定义环境变量。

Node.js 20 引入了 实验性.env 文件支持

现在,您可以使用 --env-file 标志在运行 Node.js 应用程序时指定环境文件。以下是一个 .env 文件示例以及如何使用 process.env 访问其变量。

# .env file
PORT=3000

在您的 js 文件中

process.env.PORT; // "3000"

使用 .env 文件中设置的环境变量运行 app.js 文件。

node --env-file=.env app.js

此命令从 .env 文件加载所有环境变量,使它们在 process.env 上对应用程序可用。

此外,您可以传递多个 --env-file 参数。后续文件将覆盖先前文件中定义的现有变量。

node --env-file=.env --env-file=.development.env app.js

注意:如果环境和文件中定义了相同的变量,则环境中的值优先。

阅读时间
2 分钟阅读
贡献
编辑此页面