Node.js+Express+Mysql服务添加环境变量

1、使用dotenv插件

1)安装插件:npm install dotenv-cli --save-dev

2)在项目根目录下添加对应的 .env 配置文件;

javascript 复制代码
// .env配置文件内容
MODE='development',
BASE_URL='http://127.0.0.1:8081'

3) 在启动命令中设置对应的加载文件:dotenv -e .env.xxxx

javascript 复制代码
// package.json文件
...
  "scripts": {
    "nodemon-serve": "nodemon app.js",
    "nodemon-serve:test": "dotenv -e .env.test nodemon app.js",
    "nodemon-serve:prod": "dotenv -e .env.production nodemon app.js",
    "serve": "dotenv -e .env.production nodemon app.js",
    "serve:local": "node app.js",
    ...
  }

4)在入口文件app.js中引入dotenv插件,并加载默认配置文件

javascript 复制代码
// app.js文件
...
// 默认加载的是.env文件
require('dotenv').config();

// 使用 process.env.xxx 访问配置文件中对应key的内容
console.log('BASE_URL:', process.env.BASE_URL);
console.log('MODE:', process.env.MODE);



2、在package.json文件的运行命令中设置NODE_ENV环境变量,根据环境变量的值读取对应的配置文件

javascript 复制代码
// package.json文件
...
"scripts": {
    "nodemon-serve": "set NODE_ENV=development && nodemon app.js",
    "nodemon-serve:test": "set NODE_ENV=test && nodemon app.js",
    "nodemon-serve:prod": "set NODE_ENV=production && nodemon app.js",
 }

2)通过process.env.NODE_ENV访问设置的环境变量

javascript 复制代码
// app.js文件
...
console.log('NODE_ENV:', process.env.NODE_ENV.trim());


相关推荐
陌上丨2 小时前
MySQL8.0高可用集群架构实战
数据库·mysql·架构
一只自律的鸡2 小时前
【MySQL】第十一章 存储过程和存储函数
数据库·mysql
翔云1234562 小时前
MySQL 中的 utf8 vs utf8mb4 区别
数据库·mysql
强子感冒了2 小时前
MySQL学习随笔:数据类型与字段约束
学习·mysql
一只酸奶牛^_^2 小时前
解决LinuxDeploy部署mysql、redis数据库无法启动问题。
redis·mysql
CodeBlossom3 小时前
MySQL进阶 索引
数据库·mysql
方方洛4 小时前
技术实践总结:schema-bridgion:json、xml、yaml、toml文件相互转换
xml·前端·typescript·node.js·json
心.c5 小时前
Vue3+Node.js实现文件上传并发控制与安全防线 进阶篇
前端·javascript·vue.js·安全·node.js
小北方城市网5 小时前
Spring Cloud Gateway 自定义过滤器深度实战:业务埋点、参数校验与响应改写
运维·jvm·数据库·spring boot·后端·mysql
indexsunny6 小时前
互联网大厂Java面试实录:Spring Boot微服务在电商场景中的应用与挑战
java·spring boot·redis·mysql·security·microservices·interview