Env files
De eenvoudigste manier om de PORT variabele een waarde te geven, is door deze in je terminal tijdens de opstart van je server te declareren. Je geeft de naam van de variabele op, gevolgd door het gelijkteken en de waarde. Roep vervolgens je Node.js-app aan.
Normaliter zie je nu het volgende bericht: "The value of PORT is: 3000".
Je kan dit patroon herhalen en ook andere variabelen toevoegen. Hier is een voorbeeld van het doorgeven van twee omgevingsvariabelen.
Een .env-bestand
Als je er eenmaal een aantal hebt gedefinieerd, zal je snel merken dat het een onderhoudsnachtmerrie wordt. Stel je voor dat je een tiental omgevingsvariabelen gebruikt. Dit schaalt niet goed als je ze allemaal op één regel moet typen.
Omgevingsvariabelen uitvoeren vanaf een terminal is zeker handig. Maar het heeft zijn nadelen:
Je kan de lijst met variabelen niet raadplegen;
Het is veel te gemakkelijk om een typfout te maken;
Een populaire oplossing voor het organiseren en onderhouden van je omgevingsvariabelen is het gebruik van een .env
-bestand. Het helpt ons om alle omgevingsvariabelen op één plek te definiëren en indien nodig te wijzigen.
Maak het .env
-bestand ergens in de bestandenstructuur van je applicatie en voeg je variabelen en waarden eraan toe.
Een .gitignore-bestand
Een .env
-bestand is een geweldige manier om al je omgevingsvariabelen op één plek te verzamelen. Zorg er wel voor dat je het .env
-bestand niet in een version control systeem zoals Git plaatst. Anders bevat je version control historiek referenties van je omgevingsvariabelen. Dit zou een beveiligingsrisico vormen aangezien er gevoelige informatie in je omgevingsvariabelen kan staan.
Gebruik in een Node applicatie
Hiervoor heb je het dotenv package nodig. Importeer het via import 'dotenv/config'
voor het eerste gebruik van een omgevingsvariabele. Hierna kan je gebruik maken van process.env.VARIABELENAAM
. Omdat het mogelijk is dat een variabele geen waarde heeft gekregen, zijn dit soort waarden String | undefined
. Indien een variabele aanwezig moet zijn, kan je best bij opstart van de applicatie hier op checken. Indien hij dan niet bestaat, kan je een foutmelding geven en afsluiten via process.exit(1)
.
Last updated