Heim >Web-Frontend >js-Tutorial >Verwaltung von Umgebungsvariablen in node.js mit dotenv
Bei der Entwicklung von Anwendungen in node.js ist die sichere Verwaltung sensibler Konfigurationswerte von entscheidender Bedeutung. Diese Werte - wie API -Schlüssel, Datenbankanmeldeinformationen und Serverports - werden häufig in Umgebungsvariablen gespeichert. Mit dem DOTenV -Paket können wir diese Variablen aus einer .Env -Datei laden, um sie aus unserem Quellcode herauszuhalten, während sie in unserer Anwendung dennoch zugänglich sind.
In diesem Artikel werden wir untersuchen, wie Umgebungsvariablen mithilfe von DOTenV effizient verwaltet werden und eine Versorgungsfunktion erstellen, um sicherzustellen, dass erforderliche Variablen immer verfügbar sind.
Verwenden von Umgebungsvariablen bietet mehrere Vorteile:
Bevor wir dotenv verwenden können, müssen wir es in unserem Projekt installieren:
npm install dotenv
Erstellen Sie im Root Ihres Projekts eine .env -Datei und definieren Sie Ihre Umgebungsvariablen:
PORT=5000 FRONTEND_URL=http://localhost:3000 NODE_ENV=development DB_CONNECT=mongodb://localhost:27017/mydatabase ACCESS_TOKEN=your-secret-access-token
Hinweis: Verpflichten Sie Ihre .EnV -Datei niemals in einem Repository! Fügen Sie immer .Env zu Ihrer .gitignore -Datei hinzu.
Wir können dotenv verwenden, um Umgebungsvariablen in unsere Node.js -Anwendung zu laden. Der folgende Code zeigt, wie das geht:
import { config } from "dotenv"; config({ path: "../../.env" }); // Define all required environment variables const envVars = { port: process.env.PORT || 5000, frontendUrl: process.env.FRONTEND_URL, nodeEnv: process.env.NODE_ENV as "development" | "production", dbConnect: process.env.DB_CONNECT, accessToken: process.env.ACCESS_TOKEN, }; /** * This function returns an environment variable and throws an error if unavailable. * @param varName - The key of the environment variable. * @returns The value of the specified environment variable. */ export default function getEnv(varName: keyof typeof envVars): string { if (typeof envVars[varName] === "undefined") { console.error(`'${varName}' is not available`); process.exit(1); } else { return envVars[varName] as string; } }
import { config } from "dotenv"; config({ path: "../../.env" });
Dies importiert dotenv und lädt die .Env -Datei in process.env.
const envVars = { port: process.env.PORT || 5000, frontendUrl: process.env.FRONTEND_URL, nodeEnv: process.env.NODE_ENV as "development" | "production", dbConnect: process.env.DB_CONNECT, accessToken: process.env.ACCESS_TOKEN, };
Wir definieren eine Reihe von erwarteten Umgebungsvariablen und geben einen Standardwert für Port an, falls er fehlt.
export default function getEnv(varName: keyof typeof envVars): string { if (typeof envVars[varName] === "undefined") { console.error(`'${varName}' is not available`); process.exit(1); } else { return envVars[varName] as string; } }
Diese Funktion stellt sicher, dass, wenn eine Umgebungsvariable fehlt
import getEnv from "./getEnv"; const databaseURL = getEnv("dbConnect"); console.log("Database URL:", databaseURL);Wenn die Variable fehlt, wird die Anwendung einen Fehler beendet und protokolliert, sodass wir die App niemals mit fehlenden Konfigurationen ausführen.
Umgebungsvariablen verwalten ist ein wesentlicher Bestandteil der Anwendungsentwicklung, und das DOTENV -Paket erleichtert es einfach, sie sicher zu laden. Durch Erstellen eines strukturierten Ansatzes unter Verwendung einer Getenv -Funktion können wir sicherstellen, dass alle erforderlichen Variablen ordnungsgemäß geladen sind, wodurch Laufzeitfehler durch fehlende Konfigurationen verhindern.
Wenn wir Best Practices folgen, können wir die Sicherheit, Wartbarkeit und Flexibilität unserer Node.js -Anwendungen verbessern.
npm install dotenv
Das obige ist der detaillierte Inhalt vonVerwaltung von Umgebungsvariablen in node.js mit dotenv. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!