环境变量是在程序外部设置的变量,通常通过云提供商或操作系统设置。
在 Node 中,环境变量是安全且方便地配置不经常更改的内容(例如 URL、身份验证密钥和密码)的好方法。
如何创建环境变量
Node 支持开箱即用的环境变量,并且可以通过 env 对象(它是 process 全局对象的一个属性)访问。
要看到这一点,你可以在Node REPL中直接创建你自己的环境变量,方法是将一个变量直接附加到 process.env 对象上。
例如,要创建一个环境变量来存储我行李上的密码,我可以这样分配变量:process.env.LUGGAGE_COMBO=“12345"。(顺便说一句:按照惯例,环境变量通常全部大写。)
虽然这是一个很好的实验,但你不会在一个应用程序中这样使用Node REPL。为了在你的Node应用程序中创建环境变量,你可能想使用像DotEnv这样的包。
如何使用 DotEnv
DotEnv 是一个轻量级的 npm 包,它自动将 .env 文件中的环境变量加载到 process.env 对象中。
要使用 DotEnv,首先使用以下命令安装它:npm i dotenv。然后在您的应用程序中,像这样要求和配置包:require('dotenv').config()。
请注意,某些包(例如 Create React App)已经包含 DotEnv,并且云提供商可能有不同的方式来设置环境变量。因此,在你遵循本文的任何建议之前,请确保你检查你正在使用的任何包或供应商的文档。
如何创建 .env 文件
安装和配置 DotEnv 后,在文件结构的顶层创建一个名为 .env 的文件。在这里,你将创建所有的环境变量,以激动人心的NAME=value 格式书写。例如,你可以这样设置一个端口变量为3000,PORT=3000。
你可以在 .env 文件中声明多个变量。例如,你可以这样设置与数据库有关的环境变量。
- DB_HOST=localhost
- DB_USER=admin
- DB_PASSWORD=password
没有必要用引号来包裹字符串,DotEnv会自动为你做这个。
一旦你创建了这个文件,请记住,你不应该把它推送到GitHub,因为它可能包含敏感数据,如认证密钥和密码。将该文件添加到 .gitignore 中,以避免意外地将其推送到公共 repo。
如何访问环境变量
访问你的变量是非常容易的!它们被附在 process.env 对象上,所以你可以使用 process.env.KEY 模式来访问它们。
如果你需要改变你的任何环境变量的值,你只需要改变 .env 文件。
总结
环境变量将使你的代码更容易维护和更安全,它们很容易用Dotenv来设置,并在Node中直接使用。
现在你知道它是怎么做的了,你可以为你的Node应用程序创建你自己的环境变量。尽情享受吧!
原文:https://www.freecodecamp.org/news/how-to-use-node-environment-variables-with-a-dotenv-file-for-node-js-and-npm/
作者:Veronica Stork
本文转载自微信公众号「前端全栈开发者」,可以通过以下二维码关注。转载本文请联系前端全栈开发者公众号。