https://a.storyblok.com/f/270183/1368x665/bf41915afb/25feb_dev-blog_java-enviormental-variables.png

Wie man Umgebungsvariablen in JavaScript mit Dotenv verwendet

Zuletzt aktualisiert am February 18, 2025

Lesedauer: 2 Minuten

Einführung

Sensible Informationen in Ihren Quelldateien zu verschlüsseln ist so, als würden Sie Ihr Passwort auf einen Zettel schreiben und ihn auf Ihrem Laptop für alle sichtbar hinterlassen - keine gute Idee! Ein besserer und sicherer Ansatz ist die Verwendung von Umgebungsvariablenzu verwenden, die sensible Daten wie API-Schlüssel und Kennwörter außerhalb Ihrer Codebasis sicher speichern.

Nicht alle JavaScript-Frameworks importieren automatisch Umgebungsvariablen, so dass die Verwendung eines Moduls wie dotenv -eine leichtgewichtige, abhängigkeitsfreie Bibliothek- ist eine gute Praxis, um diesen Prozess zu vereinfachen. Dotenv liest die Variablen, die in einer .env Datei definierten Variablen und lädt sie in das Node.js process.env Objekt, das als globaler Speicher für Umgebungsvariablen in Form von Schlüssel-Wert-Paaren fungiert (alle Werte werden als Strings gespeichert). Auf diese Weise wird sichergestellt, dass Ihre sensiblen Informationen in Ihrer gesamten Anwendung sicher zugänglich sind, ohne dass sie in Ihrem Code offengelegt werden.

Nun wollen wir uns anhand eines praktischen Beispiels ansehen, wie man Umgebungsvariablen mit dotenv verwendet: Senden einer WhatsApp-Nachricht unter Verwendung der Vonage Messages API!

Dotenv installieren

Führen Sie die folgenden Befehle in Ihrem Terminal aus, um zu initialisieren npmzu initialisieren, dotenv zu installieren und das Git-Repository für das Projekt zu initialisieren:

// initialize npm on the project
npm init -y

// install dotenv
npm install dotenv --save

// initialize git repo
git init

Dotenv verwenden

Um dotenv zu verwenden, erstellen Sie eine .env Datei im Stammverzeichnis Ihres Projekts. Diese Datei wird Ihre Umgebungsvariablen enthalten. Sie können die vollständige Anleitung zum Versenden einer WhatsApp-Nachricht um diese Werte in Ihrer Vonage-Anwendung zu finden:

VONAGE_API_KEY="your-api-key"
VONAGE_API_SECRET="your-api-secret"
VONAGE_APPLICATION_ID="your-application-id"
VONAGE_PRIVATE_KEY="path/to/your/private.key"
TO_NUMBER="recipient-phone-number"
WHATSAPP_NUMBER="sender-phone-number"

Hinweis: Wenn Ihre Variable Leerzeichen enthält, schließen Sie sie in Anführungszeichen ein.

Senden einer WhatsApp-Nachricht mit Vonage Messages API

Als nächstes erstellen Sie eine send-whatsapp-message.js Datei.

Fügen Sie diese Zeile als Einstiegspunkt in die Anwendung ein, um dotenv zu konfigurieren:

require('dotenv').config();

Fügen Sie diese Zeile hinzu, führen Sie sie aus und entfernen Sie sie wieder, sobald Sie sich vergewissert haben, dass dotenv funktioniert:

console.log(process.env);

Um auf Umgebungsvariablen in Node.js zuzugreifen, verwenden Sie process.env gefolgt von dem Variablennamen. Zum Beispiel:

const VONAGE_APPLICATION_ID = process.env.VONAGE_APPLICATION_ID;

Fügen Sie den restlichen Code hinzu:

// initialize dependencies 
const VONAGE_APPLICATION_ID = process.env.VONAGE_APPLICATION_ID;
const VONAGE_PRIVATE_KEY = process.env.VONAGE_PRIVATE_KEY;

const TO_NUMBER = process.env.TO_NUMBER;
const WHATSAPP_NUMBER = process.env.WHATSAPP_NUMBER;

const { Vonage } = require('@vonage/server-sdk');
const { WhatsAppText } = require('@vonage/messages');

const vonage = new Vonage({
  applicationId: VONAGE_APPLICATION_ID,
  privateKey: VONAGE_PRIVATE_KEY,
});

// the logic
vonage.messages.send(
  new WhatsAppText({
    text: 'This is a WhatsApp Message text message sent using the Messages API',
    to: TO_NUMBER,
    from: WHATSAPP_NUMBER,
  }),
)
  .then((resp) => console.log(resp.messageUUID))
  .catch((error) => console.error(error));

Wenn Sie nun den Code ausführen, sollte er auf Ihre Umgebungsvariablen zugreifen, um die Nachricht zu senden:

node send-whatsapp-message.js

Eine andere Möglichkeit zum Aufrufen von .env innerhalb eines Skripts aufzurufen. Das bedeutet, dass Sie nicht require('dotenv').config() am Anfang Ihrer send-whatsapp-message.js Datei. Gehen Sie stattdessen in die Projekt package.json Datei und erstellen Sie ein Skript namens “dev” wie das folgende:

"scripts": {
"dev": "node -r dotenv/config send-whatsapp-message.js"

Wenn Sie das Skript ausführen, erhalten Sie trotzdem Ihre Umgebungsvariablen!

npm run dev

Verwalten mehrerer Umgebungen

In komplexen Projekten benötigen Sie möglicherweise unterschiedliche .env Dateien für Entwicklungs-, Test- und Produktionsumgebungen. Werkzeuge wie dotenv-cli können Ihnen helfen, mehrere Umgebungen zu verwalten.

Sie können zum Beispiel verschiedene .env Dateien verwenden:

  • .env.local

  • .env.production

Laden Sie sie mit der dotenv-cli CLI:

$ dotenv -e .env.production node send-whatsapp-message.js

Sicherer Einsatz

Für einen sicheren Einsatz, .env Dateien niemals an die Versionskontrolle übergeben werden! Verwenden Sie .gitignore um sie auszuschließen.

Zu diesem Zweck erstellen Sie eine .gitignore Datei mit dem folgenden Inhalt:

.env

Wenn Sie nun eine Übergabe an Git vornehmen, wird alles außer die aufgelistete(n) Datei(en) in das Repository übertragen werden.

Schlussfolgerung

Nun, da Sie gelernt haben, wie man Umgebungsvariablen in JavaScript verwendet, können Sie aufhören, Ihre persönlichen Informationen in Ihrem Code zu kodieren und sie an prod zu senden, damit die Welt sie sieht! Haben Sie andere bewährte Methoden zur Verwendung von Umgebungsvariablen? Wenn ja, teilen Sie sie bitte mit und taggen Sie mich - Ich würde mich freuen, davon zu hören! Du kannst auch gerne unserer Community beitreten Slack und folge uns auf X, früher bekannt als Twitter. Viel Spaß beim Programmieren!

Teilen Sie:

https://a.storyblok.com/f/270183/384x384/b68093ec17/diana-pham.png
Diana PhamAdvokat für Entwickler

Diana ist Entwicklungsbeauftragte bei Vonage. Sie isst gerne frische Austern.