Express

Aus JsWiki.de
Wechseln zu: Navigation, Suche
Datei:Expressjs.png
Das Logo vom Express-Framework

Express (auch als Express.js bekannt) ist ein schnelles, performantes, flexibles und minimalistisches Webframework für Node.js. Es eignet sich sowohl für Single-Page-Anwendungen, Multi-Page-Webseiten, als auch für sogenannte Hybrid-Apps.

Im Bereich von Node.js ist Express aufgrund seiner Flexibilität das populärste Webframework überhaupt. Außerdem dient es als Basis vieler weiteren abstrakteren Webframeworks wie z.B. Sails.js.

Aufbau des Webframeworks[Bearbeiten]

Der Kern von Express besteht lediglich aus grundlegenden Kontrollstrukturen welche sich universell einsetzen lassen und essenziell für das Webframework sind. Alle weiteren Funktionalitäten lassen sich je nach Bedarf mit vielen verschiedenen Modulen, die als Middlewares berzeichnet werden, nachrüsten.

Erwähnenswerte Middlewares[Bearbeiten]

  • body-parser – Verarbeitet eingehende Formulardaten und stellt diese bereit
  • cookie-parser – Verarbeitet Cookies
  • session – Eine einfache Session-Middleware, speichert die Daten direkt als Variablen in Node.js (Ideal für Entwicklungszwecke, für den Produktiveinsatz hingegen ungeeignet)
  • cookie-session – Speichert Session-Daten clientseitig in Cookies und signiert diese, um Manipulationen zu verhindern (Kommt ohne eine Datenbank aus)
  • connect-redis – Speichert Sessions in einer Redis-Datenbank
  • connect-mongo – Speichert Sessions in einer MongoDB-Datenbank
  • csurf – Schutz Gegen CSRF-Attacken[1], generiert zufällige Tokens und validiert diese beim Aufrufen von bestimmten URLs bevor die Anfrage verarbeitet wird
  • serve-favicon – Kümmert sich um die optimale Ausgabe eines Favicons
  • compression – Komprimiert die ausgegebenen Daten
  • express-validator – Validiert Formulardaten, URL- und Query-Parameter mithilfe von Validator.js[2]

Gesichte von Express[Bearbeiten]

Express wurde ursprünglich von TJ Holowaychuk gestartet, als sich Node.js in einem frühen Entwicklungsstadium befand und sich noch wöchentlich änderte. Ein Ziel war es dabei laut Aussagen des Entwicklers, "Node.js in der heutigen Form zu abstrahieren" und so eine stabile Grundlage für Webanwendungen zu schaffen.[3]

Im Juli 2014 übergab TJ Holowaychuk die Projektleitung an das Unternehmen Strongloop, da er nach eigenen Angaben für neue Projekte zu der Programmiersprache Go gewechselt ist.[4][5][6]

Weblinks[Bearbeiten]

Artikel über Express[Bearbeiten]

Quellen[Bearbeiten]

  1. Cross-Site-Request-Forgery (auf de.wikipedia.org)
  2. chriso/validator.js (auf github.com)
  3. TJ Holowaychuk im Interview (auf heise.de)
  4. TJ Holowaychuk kehrt Node.js den Rücken (auf heise.de)
  5. TJ Holowaychuk Passes Sponsorship of Express to StrongLoop
  6. Farewell Node.js – Leaving node.js land (auf medium.com)