Node.js中是否存在读取环境变量地址的方法?
在Node.js中读取环境变量的方法
当然有啦!Node.js 提供了几种简单直接的方式来读取环境变量,我来给你详细讲讲:
1. 直接使用内置的process.env对象
这是 Node.js 原生支持的核心方式,process.env是一个全局对象,会自动加载当前运行环境下的所有环境变量。你可以直接通过属性名访问对应的变量:
// 读取名为 PORT 的环境变量,若未设置则用默认值3000 const serverPort = process.env.PORT || 3000; // 读取数据库地址变量 const dbUrl = process.env.DB_CONNECTION_URL;
需要注意的是,process.env里的所有值都是字符串类型,如果需要数字、布尔值这类类型,得自己手动转换:
// 把环境变量转成数字 const timeout = Number(process.env.REQUEST_TIMEOUT); // 判断是否为生产环境 const isProduction = process.env.NODE_ENV === 'production';
2. 使用dotenv包管理本地开发环境变量
在本地开发时,我们通常不会在系统里手动设置环境变量,这时候可以用dotenv包来轻松管理:
步骤:
- 首先安装包:
npm install dotenv --save-dev
- 在项目根目录创建一个
.env文件,写入你的环境变量(键值对形式):
DB_URL=mongodb://localhost:27017/my_dev_db API_KEY=abc123xyz
- 在项目的入口文件(比如
app.js或index.js)最顶部引入并加载:
require('dotenv').config(); // 之后就可以像之前一样读取变量了 console.log(process.env.DB_URL); // 输出 mongodb://localhost:27017/my_dev_db
重要提醒:
一定要把.env文件加入到.gitignore里,绝对不要提交到版本控制,避免敏感信息泄露!
内容的提问来源于stack exchange,提问作者0DAYanc
相关产品推荐
相关产品推荐

