Come leggere le variabili d'ambiente da Node.js
Il modulo core process
di Node.js fornisce la proprietà env
che ospita tutte le variabili d'ambiente impostate al momento dell'avvio del processo.
Il codice seguente esegue app.js
e imposta USER_ID
e USER_KEY
.
USER_ID=239482 USER_KEY=foobar node app.js
Questo passerà l'utente USER_ID
come 239482 e USER_KEY
come foobar. Questo è adatto per i test, tuttavia per la produzione, probabilmente configurerai alcuni script bash per esportare le variabili.
NOTA
process
non richiede un "require"
, è automaticamente disponibile.
Ecco un esempio che accede alle variabili d'ambiente USER_ID
e USER_KEY
, che abbiamo impostato nel codice precedente.
process.env.USER_ID // "239482
process.env.USER_KEY // "foobar
Allo stesso modo puoi accedere a qualsiasi variabile d'ambiente personalizzata che imposti. Node.js 20 ha introdotto il supporto sperimentale per i file .env.
Ora, puoi usare il flag --env-file
per specificare un file di ambiente quando esegui la tua applicazione Node.js. Ecco un esempio di file .env
e come accedere alle sue variabili usando process.env
.
.env file
PORT=3000
Nel tuo file js
process.env.PORT // 3000
Esegui il file app.js
con le variabili d'ambiente impostate nel file .env
.
node --env-file=.env app.js
Questo comando carica tutte le variabili d'ambiente dal file .env
, rendendole disponibili all'applicazione su process.env
. Inoltre, puoi passare più argomenti --env-file
. I file successivi sovrascrivono le variabili preesistenti definite nei file precedenti.
node --env-file=.env --env-file=.development.env app.js
NOTA
Se la stessa variabile è definita nell'ambiente e nel file, il valore dall'ambiente ha la precedenza.