NodeJs环境变量与配置文件
NodeJs Environment variables vs config file
实际上我有一个 nodejs express 应用程序,其配置文件用于主机、端口、JWT 令牌、DB 参数等参数。
问题是将这些参数直接保存在环境变量上(没有任何配置文件)并访问它们是否有意义,而无需在所有组件和模块中为配置执行 "require"。
我看到的所有示例都使用配置文件,可能与安全性或内存有关?
另一种可能性是在 nodejs 中使用 .env 文件。我认为您必须 npm install dotenv 在您的应用程序中。理想情况下不同的实例(dev,prod ....)有自己的 .env 文件,如果你想访问,你不必每次都调用 require("dotenv")环境变量。在 i.e) 在 app.js 的开头调用它,您可以在任何子文件中访问环境变量。
配置文件可以让您快速设置机器的整个环境 - 例如 S3 存储桶、API url、访问密钥等。如果您将它们分开 process.env.VARIABLE
那么您会需要设置其中的每一个......你可能会为此制作一个脚本......现在你又有了一个环境文件!
要访问环境变量,您可以在 nodejs 代码中使用 process.env.VARIABLE
(始终是一个字符串),只要在进程启动之前设置变量即可。
配置文件通常用于设置环境变量的默认值,
在编写测试用例时需要使用默认值或模拟值,
而且你会把所有的环境变量放在一个更好管理的地方。
所以如果你有一个环境变量 x,
在配置文件中,您可以将其保留为
config.x = process.env.x || 'defaultVale or mockValue'
实际上我有一个 nodejs express 应用程序,其配置文件用于主机、端口、JWT 令牌、DB 参数等参数。
问题是将这些参数直接保存在环境变量上(没有任何配置文件)并访问它们是否有意义,而无需在所有组件和模块中为配置执行 "require"。
我看到的所有示例都使用配置文件,可能与安全性或内存有关?
另一种可能性是在 nodejs 中使用 .env 文件。我认为您必须 npm install dotenv 在您的应用程序中。理想情况下不同的实例(dev,prod ....)有自己的 .env 文件,如果你想访问,你不必每次都调用 require("dotenv")环境变量。在 i.e) 在 app.js 的开头调用它,您可以在任何子文件中访问环境变量。
配置文件可以让您快速设置机器的整个环境 - 例如 S3 存储桶、API url、访问密钥等。如果您将它们分开 process.env.VARIABLE
那么您会需要设置其中的每一个......你可能会为此制作一个脚本......现在你又有了一个环境文件!
要访问环境变量,您可以在 nodejs 代码中使用 process.env.VARIABLE
(始终是一个字符串),只要在进程启动之前设置变量即可。
配置文件通常用于设置环境变量的默认值,
在编写测试用例时需要使用默认值或模拟值,
而且你会把所有的环境变量放在一个更好管理的地方。
所以如果你有一个环境变量 x,
在配置文件中,您可以将其保留为
config.x = process.env.x || 'defaultVale or mockValue'