尝试在节点中设置环境变量?无法运作

时间:2019-03-04 06:02:57

标签: javascript node.js environment-variables config

因此我已经安装了npm config模块。

我试图设置一个存储秘密/私人密钥的局部变量。

尝试使用以下命令设置环境变量/私钥

 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": ""
}

custom-environment-variables.json(位于配置文件夹中)

{
  "JWTPRIVATEKEY": "VIDLY_JWTPRIVATEKEY"
}

**

  

错误:“致命错误:未定义JWTPRIVATEKEY”

**

我在做什么错了?

1 个答案:

答案 0 :(得分:0)

您可以尝试在生产和开发配置文件夹中设置变量,而不用这种方式设置变量:

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;