dotenv 是一个从 .env
文件中加载环境变量的包,npm 周下载量有三千五百万。在 Node.js v20.6.0
中,已经内置了对 .env
文件的支持,这篇文章将演示如何在 Node.js 中访问 .env
中的环境变量。
创建一个最简单的 Express 应用程序,app.js
:
const express = require("express");
const app = express();
const PORT = 3000;
app.get("/", async (req, res) => {
res.send(`你好,${process.env.NAME}!`);
});
app.listen(PORT, async () => {
console.log(`App listening on port ${PORT}`);
});
然后在根目录创建一个 .env
文件,与 app.js
同级。
NAME="远小帅"
请确保你的 Node.js 版本大于等于 v20.6.0
,或者使用 NVM 管理不同的 Node.js 版本。
NVM 的安装与使用可以看我的另一篇文章:Linux系统安装NVM管理多版本Node.js(两行代码)。
Window 系统可以直接下载安装 Nvm for Windows。
nvm install 20.6.0
然后运行 node -v
,确保版本号大于等于 v20.6.0
。
现在只需在启动命令中添加一个新的参数 env-file
来访问我们的环境变量:
node --env-file=.env app.js
接下来打开 http://localhost:3000,将会看到内容:你好,远小帅!
随着 Node.js v20.6.0
的推出,开发者们再也无需依赖额外的包来处理环境变量,这一切已经成为过去式。内置的 .env
文件支持不仅减轻了项目的依赖负担,提高了项目的运行效率,还使得代码的部署和管理变得更加优雅。