试图在节点中设置环境变量?不工作

Trying to set an environment variable in node? not working

所以我安装了 npm config 模块。

我试图设置一个存储 secret/privateKey 的局部变量。

尝试使用以下命令设置环境 variable/private 密钥

 export VIDLY_JWTPRIVATEKEY=MYSECUREKEY

但是它不认为它正在设置,因为我通过

收到错误消息
console.log("FATAL ERROR: JWTPRIVATEKEY is not defined");

这就是我检查密钥是否已设置的方式..

index.js

if (!config.get("JWTPRIVATEKEY")) {
  console.log("FATAL ERROR: JWTPRIVATEKEY is not defined");
  // node environment variable. 1 (any other number exc. 0) is exit the app, 0 is success
  process.exit(1);
}

userAuth.js 我再次尝试获取私有,但是它没有设置 (?)

   #code above 

  const token = jwt.sign({ _id: user._id }, config.get("JWTPRIVATEKEY"));

default.json(在配置模块文件夹中)

{
  "JWTPRIVATEKEY": ""
}

自定义环境-variables.json(在配置文件夹中)

{
  "JWTPRIVATEKEY": "VIDLY_JWTPRIVATEKEY"
}

**

ERROR: "FATAL ERROR: JWTPRIVATEKEY is not defined"

**

我做错了什么?

除了使用这种方式设置变量,您还可以尝试在生产和开发配置文件夹中设置它,如下所示:

config/development.js

const config = {
    env: 'development',
    JWTPRIVATEKEY: <your_dev_key>
};

module.exports = config;

config/production.js

const config = {
    env: 'production',
    JWTPRIVATEKEY: <your_prod_key>
};

module.exports = config;

两年后了!但我认为它可能有用,至少对其他人有用。 如果您在 IDE 的终端中设置环境变量和 运行 应用程序,它将无法运行! 但如果在“cmd”中执行这些操作,它会起作用。