express

Ist ein Web Application Framework was von Sinatra inspiriert wurde.

Express stellt Routen zur Verfügung, jede Route ist eine Methode des Applikation Objekts. Jede Methode bekommt eine URL als Parameter und eine Callback Funktion, als URL Parameter werden auch Reguläre Ausdrücke unterstützt. Die Callback Funktionen sind Request Handler und bekommen Request und Response Objekte als Parameter.

Die Request Handler können auch mit einem dritten Parameter genutzt werden, womit die Ausführung zu einem weiteren Request Handler weitergereicht werden kann.

Middleware
Ein statisches Verzeichnis definieren.

Dieses kann auch mit einem seperaten Namen zur Verfügung gestellt werden.

Um mit POST Daten zu arbeiten wird body-parser benötigt.

Möchte man mit einer Session arbeiten kann express-session verwendet werden.
Um den Cookie Header zu analysieren verwendet man cookie-parser, die Cookies stehen dann durch req.cookies zur Verfügung.

Middleware ist eine Funktion mit Zugriff auf das Request- und Response-Objekt. Wenn die Funktion den Request Fluss nicht beendet muss next() aufgerufen werden.

Es gibt viel Middleware für Express und es kann auch einfach eigene Middleware geschrieben werden.

Templates
Mit Express ist es möglich eine Template Engine zu verwenden.

Als Standard Engine wird jade verwendet, es kann auch eine andere Template Engine gesetzt. Das Verzeichnis für Templates ist views als Standardeinstellung, kann auch entsprechend gesetzt werden.

Jade

index.jade

Jade Homepage

EJS

index.ejs

EJS Homepage