web-dev-qa-db-fra.com

Comment puis-je vérifier si une variable d'environnement est définie dans Node.js?

Je voudrais vérifier si une variable d'environnement est définie dans mon serveur Node.js Express et effectuer différentes opérations en fonction de son paramétrage.

J'ai essayé ceci:

if(process.env.MYKEY !== 'undefined'){ console.log('It is set!'); }
else { console.log('No set!'); }

Je teste sans le process.env.MYKEY mais la console affiche "C'est réglé".

12
user3812780

Cela fonctionne très bien dans mon projet Node.js:

if(process.env.MYKEY) { 
    console.log('It is set!'); 
}
else { 
    console.log('No set!'); 
}
22
kucing_terbang

Pourquoi ne pas vérifier si la clé existe dans les variables d'environnement?

if ('MYKEY' in Object.keys(process.env))
    console.log("It is set!");
else
    console.log("Not set!");
1
MikeCPT

Si vous attribuez une valeur à votre instruction if, vous pouvez le faire comme ceci

var thisIsSet = 'asddas';
var newVariable = thisIsSet ||'otherValue'
console.log(newVariable)

Résultats en asddas

0
Evan Parsons

C'est un bon moyen de vérifier votre variable d'environnement

if (process.env.YOUR_ VARIABLE) {
    // If your variable is exist
}

Sinon, si vous souhaitez vérifier plusieurs variables d'environnement, vous pouvez extraire ce node module.

node-envchecker

0
Max Chou