介紹
环境变量是Nodejs最重要的概念之一,它允许应用程序在开发、阶段和生产等不同环境中表现不同。
它通常被用于:
- 保护秘密(数据库配置、API密钥等)
- 分配动态的系统资源,如port_name、host_name等
如何从node.js读取环境变量
Node.js的进程核心模块提供了env属性,它承载了进程启动时设置的所有环境变量。进程不需要 "require",它是自动可用的。
在这篇文章中,我们将学习如何为我们的nodejs应用程序设置多个环境。在我们开始之前,确保我们的机器上已经安装了nodejs。使用下面的命令来检查。
node -v
为Nodejs应用程序设置多个环境
让我们开始为nodejs应用程序设置多个环境。
第1步:
让我们从创建一个新的应用程序开始。要创建一个应用程序,使用npm init命令。这将在目录中创建一个package.json文件。
npm init
第2步:
安装我们的应用程序所需的库。使用下面的命令安装Express和dotenv。
npm i express –save
npm i dotenv –save
第3步:
让我们为三个不同的环境**(development.env、staging.env和production.env)创建三个.env**文件
development.env
staging.env
production.env
第4步:
现在创建config.js,它将帮助我们调用特定的.env文件。**config()**方法将允许我们读取特定的env文件和我们设置的各自变量。
config.js
第5步:
现在创建一个index.js 文件,这是我们应用程序的主文件,它将根据选定的config与命令来运行我们的应用程序。
index.js
第6步:
现在我们将设置npm运行命令,以便为不同的环境运行应用程序。在package.json中我们将添加三个脚本命令
package.json
现在让我们测试一下我们的应用程序,要在开发环境中运行应用程序,请使用以下命令。
npm run dev
终端输出:
浏览器输出:
在上面的输出中,我们可以看到我们的应用程序正在3000端口运行,我们已经为开发模式设置了这个端口。同样地,要在暂存环境中运行该应用程序。
npm run qa
终端输出:
浏览器输出:
现在我们可以看到我们的应用程序运行在3001端口,这是我们为暂存模式设置的。同样,在生产环境中运行该应用程序。
npm run prod
终端输出:
浏览器输出:
我们可以看到我们的应用程序在3002端口运行。这样,我们就可以把我们的节点应用程序设置为多种环境。
总结
在这篇文章中,我们学习了什么是节点环境变量,环境变量的目的,如何读取环境变量,以及为多环境设置nodejs应用程序。











