Est-il possible de lire les variables d'environnement dans le code Node.js?
Comme par exemple os.environ['HOME']
de Python.
process.env.ENV_VARIABLE
Où ENV_VARIABLE
est le nom de la variable à laquelle vous souhaitez accéder.
Lorsque vous utilisez Node.js , vous pouvez extraire les variables d’environnement par clé à partir de l’objet process.env
:
par exemple
var mode = process.env.NODE_ENV;
var apiKey = process.env.apiKey; // '42348901293989849243'
Voici la réponse qui va expliquer définition des variables d'environnement dans node.js
Si vous souhaitez utiliser une clé de chaîne générée dans votre programme Node.js, par exemple, var v = 'HOME'
, vous pouvez utiliser process.env[v]
.
Sinon, process.env.VARNAME
doit être codé en dur dans votre programme.
Pour récupérer les variables d'environnement dans Node.JS, vous pouvez utiliser process.env.VARIABLE_NAME, mais n'oubliez pas que l'affectation d'une propriété sur process.env convertira implicitement la valeur en chaîne.
Même si votre fichier .env définit une variable telle que SHOULD_SEND = false ou SHOULD_SEND =, les valeurs seront converties en chaînes (“False” et “0” respectivement) et non interprétées comme des booléens.
if (process.env.SHOULD_SEND) {
mailer.send();
} else {
console.log("this won't be reached with values like false and 0");
}
Au lieu de cela, vous devriez faire des vérifications explicites. J'ai trouvé que, selon le nom de l'environnement, les choses allaient très loin.
db.connect({
debug: process.env.NODE_ENV === 'development'
});
Vous pouvez utiliser le package env pour gérer les variables d’environnement par projet:
.env
sous le répertoire du projet et placez-y toutes vos variables.require('dotenv').config();
Terminé. Vous pouvez maintenant accéder à vos variables d’environnement avec process.env.ENV_NAME
.
Pourquoi ne pas les utiliser dans le répertoire Utilisateurs du fichier .bash_profile afin de ne pas avoir à pousser de fichiers en production avec vos variables.