Рубрики
Без рубрики

Настройка и проверка файла .env в узле

Пакет Dotenv позволяет загружать файла .env в проекте node.js, который служит центральным … Tagged с узлом, JavaScript, NPM.

dotenv Пакет включает загрузку .env Файл в проекте node.js, который служит центральным местом для управления переменными среды. Этот единый подход облегчает обновление и поддержание переменных среды простыми.

Если вы новичок в переменных окружающей среды, сначала прочитайте эту статью Переменные среды в node.js

Настройка и чтение файла .env

Наиболее распространенным решением в мире Node.js является пакет Dotenv для управления переменными среды. Вы можете создать файл .env в корневом каталоге приложения, который содержит пары ключей/значения, определяющие необходимые переменные среды для вашего проекта. Этот файл .env затем читается библиотекой Dotenv и добавляется к Process.env Анкет Пожалуйста, Не совершайте свой файл .env Анкет

Давайте обновим .gitignore , создать .env файл и прочитайте его в 7 шагах:

  1. Обновите свой .gitignore файл.
# Ignore .env files
.env
  1. Совершить обновленное .gitignore файл.
git add .gitignore
git commit -m "Adding .env to .gitignore"
  1. Установить dotenv упаковка
npm i dotenv
  1. Создайте новый файл .env в каталоге Project Root.
touch .env
  1. Добавить переменные среды в файл .env
# API connection
API_HOST=HOST-PLACEHOLDER-URL
API_KEY=TOP-SECRET
  1. Читать и использовать переменные среды в .env

Требуется dotenv и позвонить config () Метод, как можно раньше, это обычно делается в точке входа, как index.js файл.

require('dotenv').config();

console.log(process.env.API_HOST);
  1. Запустите код
node index.js

Сообщение журнала Хост-настилатель-урл , которая является переменной среды, установленной для Api_host как определено в .env файл.

Необязательно создать модуль config.js

Для приложений со многими параметрами конфигурации рекомендуется создание отдельного конфигурационного модуля. Этот модуль должен быть посвящен контролю версий.

Модуль config.js может выглядеть так:

const dotenv = require('dotenv');
dotenv.config();

module.exports = {
  version: '1.2.3,
  canonical_url: process.env.APPLICATION_ROOT,
  api: {
    host: process.env.API_HOST,
    key: process.env.API_KEY,
    secret: process.env.API_SECRET,
  },
  plugins: [
    'plugin-one',
    'plugin.two'
  ]
};

Приведенный выше пример смешивает конфигурацию из файла .env, чтобы оставаться специфическими для среды, в то время как другие значения конфигурации могут быть непосредственно использованы (например, плагины).

Это также имеет преимущество в том, что они могут импортировать конфигурации, где бы это ни было необходимо, и использовать деструктуризация, чтобы выявить только необходимые значения, которые нам нужны. Это делает код намного чище.

Документируйте свое приложение примером для файла .env

.env Файл должен быть специфичным для среды и не зарегистрироваться в управлении версиями, это наилучшая практика документировать .env Файл с примером. Это .env.Example Файл документирует обязательные переменные для приложения, и он может быть привержен контролю версий. Это обеспечивает полезную ссылку и ускоряет процесс бортового процесса для новых членов команды, поскольку время, чтобы выкопать кодовую базу, чтобы выяснить, что должно быть настроено, уменьшается.

A .env.Example могло бы выглядеть так:

# Environment variables.

# Base URL of the API server to use. No trailing slash.
API_HOST=https://example.com
# API access credentials.
API_KEY=key
API_SECRET=secret

# Enable debug mode (true) or disable it (false).
DEBUG=false

Что происходит с переменными среды, которые уже существуют?

Библиотека DOTENV никогда не будет изменять какие -либо переменные среды, которые уже были установлены. Если переменная уже была установлена в вашей среде, а переменная в файле .env сталкивается с ней, переменная в файле .env будет пропущена.

TL; DR

  • A .env Файл необходим для чистого разделения конфигураций для конкретной среды.
  • Упаковка Dotenv используется для чтения файла .ENV во время выполнения, содержащих переменные среды, и добавить их на Process.env объект.
  • Создание примера для .env Файл для документирования обязательных переменных ускоряет время настройки проекта.
  • Никогда не совершайте .env Файл в управление версией.

Спасибо за чтение, и если у вас есть Вопросы , используйте Комментарий функция или Отправьте мне сообщение @mariokandut Анкет

Если вы хотите узнать больше о Узел , посмотрите на это Учебные пособия узла Анкет

Ссылки (и большое спасибо):

Node.js , Node.js Docs Хейнод , Dotenv

Оригинал: “https://dev.to/mariokandut/set-up-and-test-a-env-file-in-node-4kp”