Middleware-Konzept
Ein besonderes und mächtiges Konzept in Express sind Middleware-Funktionen.
Middleware sorgt dafür, dass Sie bestimmte Aufgaben ausführen können, während eine Anfrage bearbeitet wird – zum Beispiel Protokollieren, Prüfen, Parsen von Daten oder Fehlerbehandlung.
Was ist eine Middleware?
Abschnitt betitelt „Was ist eine Middleware?“Eine Middleware ist im Grunde eine Funktion, die zwischen dem Eingang der Anfrage (Request) und der Antwort (Response) „dazwischengeschaltet“ wird.
app.use((req, res, next) => { console.log(`Anfrage zu: ${req.url}`); next(); // Gibt an die nächste Funktion weiter});req: Die Anfrage-Informationenres: Die Antwortmöglichkeitennext(): Ruft die nächste Middleware (oder die finale Route) auf
Mit Middleware können Sie:
- Alle Anfragen protokollieren (Logging)
- Anfragen prüfen/filtern (z. B. Authentifizierung)
- Body-Daten automatisch einlesen
- Fehler sammeln und ausgeben
- Statische Dateien bereitstellen (z. B. Bilder, CSS)
Beispiel: Logging-Middleware
Abschnitt betitelt „Beispiel: Logging-Middleware“app.use((req, res, next) => { const zeit = new Date().toLocaleString(); console.log(`[${zeit}] ${req.method} ${req.url}`); next();});Reihenfolge zählt!
Abschnitt betitelt „Reihenfolge zählt!“Sie können beliebig viele Middleware-Funktionen definieren.
Express führt diese von oben nach unten aus – zuerst die globalen, dann die routenspezifischen.
Eingebaute Middleware
Abschnitt betitelt „Eingebaute Middleware“Express bietet einige fertige Middleware, etwa für das Parsen von JSON-Body oder das Bereitstellen statischer Dateien.
Mehr dazu finden Sie auf den nächsten Seiten.