Comment puis-je définir une variable d'environnement dans node.js ?
Je préférerais ne pas dépendre de quelque chose de spécifique à la plate-forme, comme l'exécution de l'ensemble d'export ou de cmd.exe.
Comment puis-je définir une variable d'environnement dans node.js ?
Je préférerais ne pas dépendre de quelque chose de spécifique à la plate-forme, comme l'exécution de l'ensemble d'export ou de cmd.exe.
Je ne pense pas que vous ayez besoin de faire var process = require('process')
le processus est une variable globale présente.
Notez cependant que cette opération ne définira la variable qu'à l'intérieur de votre processus de nœud et de tout processus enfant qu'il appelle ; elle ne laissera pas, par exemple, la variable définie dans le shell lorsque le processus de nœud quittera (la modification de l'environnement d'un processus parent dépend beaucoup du système et n'est même pas toujours possible).
Vous devez d'abord installer ce paquet :- https://github.com/motdotla/dotenv [ npm install dotenv
]
Ensuite, vous devez créer un fichier .env dans le répertoire racine de votre projet, et vous pouvez y ajouter des variables comme celles ci-dessous:-
NODE_ENV=PRODUCTION
DATABASE_HOST=localhost
Maintenant vous pouvez facilement accéder à ces variables dans votre code comme ci-dessous:-
require('dotenv').config()
console.log(process.env.NODE_ENV);
Ça a marché pour moi, j'espère que ça vous aidera.
nœud v14.2.0 Pour définir une variable env, créez d'abord un fichier nommé config.env dans le répertoire d'origine de votre projet, puis écrivez toutes les variables dont vous avez besoin, par exemple
config.env.
NODE_ENV=development
PORT=3000
DATABASE=mongodb+srv://lord:<PASSWORD>@cluster0-eeev8.mongodb.net/tour-guide?retryWrites=true&w=majority
DATABASE_LOCAL=mongodb://localhost:27017/tours-test
DATABASE_PASSWORD=UDJUKXJSSJPWMxw
installez maintenant dotenv depuis npm, dotenv vous déchargera de votre travail
npm i dotenv
maintenant dans votre serveur de démarrage script, dans mon cas c'est server.js utiliser doenv pour charger les variables env.
const dotenv = require('dotenv');
dotenv.config({ path: './config.env' });
const app = require('./app'); // must be after loading env vars using dotenv
//starting server
const port = process.env.PORT || 3000;
app.listen(port, () => {
console.log(`app running on port ${port}...`);
});
J'utilise express, tout mon code express dans app.js, écrit ici pour votre référence.
const express = require('express');
const tourRouter = require('./route/tourRouter');
const userRouter = require('./route/userRouter');
if (process.env.NODE_ENV === 'development') {
console.log('mode development');
}
app.use(express.json());
app.use('/api/v1/tours', tourRouter);
app.use('/api/v1/users', userRouter);
module.exports = app;
maintenant démarrez votre serveur en utilisant la console, j'utilise nodemon vous pouvez l'installer à partir de npm ;
nodemon server.js
npm install dotenv
require('dotenv').config();
Vous pouvez lire les variables en utilisant :
console.log(process.env.MY_VARIABLE);
Bien que vous puissiez SET une Variable en utilisant :
process.env.MY_OTHER_VARIABLE = 'helloworld
;
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.
1 votes
Vous pouvez lire cette réponse stackoverflow.com/a/57509175/11127383