Две среды .env с разными паролями - PullRequest
0 голосов
/ 14 апреля 2019

В моем приложении я использую два API, которые требуют разные учетные данные.Я храню каждый из них в файле .env и читаю их, используя process.env.Оба файла .env и .config находятся в разных каталогах.

Первый config.js:

const dotenv = require('dotenv');
const cfg = {};

dotenv.config({path: '.env'});

cfg.port = process.env.PORT;

cfg.apiKey = process.env.apiKey;
cfg.authDomain = process.env.authDomain;
cfg.databaseURL = process.env.databaseURL;
cfg.projectId = process.env.projectId;
cfg.storageBucket = process.env.storageBucket;
cfg.messagingSenderId = process.env.messagingSenderId;


module.exports = cfg;

Второй config.js

const dotenv = require('dotenv');
const cfg = {};

dotenv.config({path: '.env'});

cfg.port = process.env.PORT;

cfg.accountSid = process.env.TWILIO_ACCOUNT_SID;
cfg.authToken = process.env.TWILIO_AUTH_TOKEN;
cfg.twimlAppSid = process.env.TWILIO_TWIML_APP_SID;
cfg.callerId = process.env.TWILIO_CALLER_ID;

module.exports = cfg;

Iнастроил оба .env файла одинаково.Но, по-видимому, второй config.js не может прочитать учетные данные, такие как: TWILIO_ACCOUNT_SID, TWILIO_AUTH_TOKEN и т. Д. Это заставило меня поверить, что для второго .env файла я должен настроить не так, как первый.

Как загрузить два набора учетных данных в одну среду?Или я должен загрузить их в различные среды?

Спасибо за ваше время.

1 Ответ

0 голосов
/ 14 апреля 2019

Для вашего первого вопроса, да, вы можете загрузить оба набора учетных данных в одной среде, так как ключи различны для каждого, вам просто нужно импортировать оба config.js в ваш «основной» код. Если вам нужно использовать два набора учетных данных в одном API, вы можете использовать оба удостоверения в одном и том же JSON следующим образом:

{
  firstSet: {
      TWILIO_ACCOUNT_SID: 'value',
      TWILIO_AUTH_TOKEN: 'value',
      TWILIO_TWIML_APP_SID: 'value',
      TWILIO_CALLER_ID: 'value'
  },
  secondSet: {
      TWILIO_ACCOUNT_SID: 'value2',
      TWILIO_AUTH_TOKEN: 'value2',
      TWILIO_TWIML_APP_SID: 'value2',
      TWILIO_CALLER_ID: 'value2'
  }
}

Определив ваши два разных учетных данных, вы можете определить логику для использования тех или иных или обоих учетных данных в вашем config.js, в зависимости от ваших потребностей, и экспортировать их в свое приложение, где вы можете выбрать учетные данные из конфигурации для использования в API.

...