有没有方法读取Node.js代码中的环境变量?
比如Python的os.environ['HOME']。
有没有方法读取Node.js代码中的环境变量?
比如Python的os.environ['HOME']。
如果您想使用Node.js程序中生成的字符串键,例如var v='HOME',可以使用进程env[v]。
否则,必须在程序中对process.env.VARNAME进行硬编码。
使用Node.js时,您可以从process.env对象中按关键字检索环境变量:
例如
var mode = process.env.NODE_ENV;
var apiKey = process.env.apiKey; // '42348901293989849243'
以下是解释在node.js中设置环境变量的答案
您可以使用env包来管理每个项目的环境变量:
在项目目录下创建一个.env文件变量。在应用程序条目文件的顶部添加此行:require('dotenv').config();
完成。现在,您可以使用process.env.env_NAME访问环境变量。
要在Node.JS中检索环境变量,可以使用process.env.VARIABLE_NAME,但不要忘记,在process.env上分配属性会将值隐式转换为字符串。
避免布尔逻辑
即使.env文件定义了一个变量,如SHOULD_SEND=false或SHOULD_ SEND=0,这些值也会被转换为字符串(分别为“false”和“0”),而不会被解释为布尔值。
if (process.env.SHOULD_SEND) {
mailer.send();
} else {
console.log("this won't be reached with values like false and 0");
}
相反,您应该进行明确的检查。我发现,依赖环境名称有很长的路要走。
db.connect({
debug: process.env.NODE_ENV === 'development'
});
使用process.env。如果Home是您的env变量名,请尝试以下操作:
const HOME = process.env.HOME;
Or
const { HOME } = process.env;