在Node JS中将键值对的值更改为环境变量

时间:2016-11-29 18:02:05

标签: javascript node.js module

{ A:"A", B:"B" }

我继承了上面的代码。我想改变'#34;秘密"从环境变量中读取。我已将其存储在LOCAL_SECRET中,我可以通过process.env.LOCAL_SECRET成功访问它。

将它添加到上面的值对的正确方法是什么?将其更改为机密:env.process.LOCAL_SECRET不起作用,我不知道为什么。

3 个答案:

答案 0 :(得分:2)

envprocess的一个属性:process.env.LOCAL_SECRET

https://nodejs.org/api/process.html#process_process_env

答案 1 :(得分:2)

我会使用dotenvcross-env

如果您通过npm或某些bash脚本运行脚本,

cross-env非常适合。

"start": "cross-env SECRET=secret && npm run server"
如果您喜欢配置文件的方法,

dot-evn会更好。

  1. 在根目录中创建.env文件

    SECRET=secret

  2. 在您的第一个脚本调用中,在使用您的SECRET键的任何模块之前

    require('dotenv').config();

  3. dotenv会在您的env变量中混合您的.env内容。

    module.exports = {
     app_uri: 'http://localhost:3000',
      redirect_uri: '/redirect',
      id: 'user1',
     secret: process.env.SECRET,
     ...
    };
    

答案 2 :(得分:1)

你可以做到

 module.exports = {
  app_uri: 'http://localhost:3000',
  redirect_uri: '/redirect',

  id: 'user1',
  secret: process.env.LOCAL_SECRET || "client_secretValue",
   ...
 };

或使用dotenv节点模块(https://www.npmjs.com/package/dotenv

您可以创建.env文件(在项目根目录中)并在那里添加环境变量并在

中使用它
module.exports = {
  app_uri: 'http://localhost:3000',
  redirect_uri: '/redirect',

  id: 'user1',
  secret: process.env.LOCAL_SECRET,
   ...
 };