15

Чтение переменных окружения в Node.js

13

Как можно прочитать переменные окружения в коде Node.js?

Например, в Python это делается с помощью os.environ['HOME'].

4 ответ(ов)

0

Чтобы получить переменные окружения в Node.js, вы можете использовать process.env.VARIABLE_NAME, но не забывайте, что присвоение значения свойству process.env неявно преобразует это значение в строку.

Избегайте логики с булевыми значениями

Даже если ваш файл .env определяет переменную, такую как SHOULD_SEND=false или SHOULD_SEND=0, эти значения будут преобразованы в строку ("false" и "0" соответственно) и не будут интерпретироваться как булевы значения.

if (process.env.SHOULD_SEND) {
 mailer.send();
} else {
  console.log("это не будет выполнено для значений типа false и 0");
}

Вместо этого вам следует делать явные проверки. Я заметил, что использование имени окружения может помочь в этом.

db.connect({
  debug: process.env.NODE_ENV === 'development'
});
0

Если вы хотите использовать строковый ключ, сгенерированный в вашем Node.js приложении, например, var v = 'HOME', вы можете использовать process.env[v].

В противном случае, вам придется хардкодить process.env.VARNAME в вашем коде.

0

Если вы хотите использовать переменные окружения в Node.js, например, переменную с именем HOME, вы можете сделать это следующим образом:

const HOME = process.env.HOME;

Или используя деструктуризацию:

const { HOME } = process.env;

В обоих случаях значение переменной окружения HOME будет доступно в вашей программе. Убедитесь, что переменная окружения установлена, иначе вы получите undefined.

0

Если вы хотите увидеть все переменные окружения во время выполнения, просто напишите в вашем файле Node.js, например в server.js:

console.log(process.env);

Этот код выведет объект process.env, содержащий все переменные окружения, доступные вашему приложению в момент выполнения. Используйте его, чтобы отладить и проверить переменные окружения, которые вы используете в своем проекте.

Чтобы ответить на вопрос, пожалуйста, войдите или зарегистрируйтесь