Express.js
Express.js ist ein serverseitiges Webframework für die JavaScript-basierte Plattform Node.js. Es erweitert Node.js um Werkzeuge, mit denen das Entwickeln moderner Webanwendungen einfacher gestaltet wird.[5] ArchitekturEine Express.js-Anwendung besteht zumindest aus der Datei app.js, in welcher Middleware und Controller registriert und der Webserver gestartet wird.[6] Einer Client-Anfrage (HTTP-Request) können im Router eine oder mehrere Requesthandler zugewiesen werden. Für die Zuweisung zwischen Anfrage und Requesthandler stellt Express.js Weiterleitungs-Werkzeuge zur Verfügung.[7] Werden einer Anfrage mehrere Requesthandler zugewiesen, so werden diese nacheinander ausgeführt; jeder dieser Requesthandler ist ein für sich genommen neutrales Programm. Ein Requesthandler akzeptiert dabei drei Parameter:
Durch diese modulare Architektur lassen sich Prozesse, welche oft ausgeführt werden müssen, z. B. Authentifizierungslogiken, vor Abhandlung eines Prozesses einschieben.[6] Um JavaScript-Konventionen fortzusetzen, wird Express.js oft in Kombination mit NoSQL-Datenbanken wie MongoDB verwendet. Eine etablierte Kombination von Technologien, in welcher Express.js eingesetzt wird, nennt sich MEAN und steht für MongoDB, Express.js, Angular.js und Node.js.[5] Beispieleapp.jsDieser Code startet einen Webserver, der auf Port 3000 hört. const express = require('express')
const app = express()
const server = app.listen(3000, function () {
const host = server.address().address
const port = server.address().port
console.info(`Example app listening at http://${host}:${port}`)
})
router.jsDieser Code weist der Anfrage const express = require('express')
const app = express() // Respond with "Hello World" when a GET request is made to the homepage
app.get('/', function (request, response) {
response.send('Hello World')
})
MiddlewaresEs gibt viele Möglichkeiten Middlewares in Express.js zu nutzen. Eine ist, mehrere Requesthandler an eine Client-Anfrage zu binden.[8] Dieser Code zeigt, wie eine Authentifizierungslogik vor den vom Client geforderten Prozess eingeschoben wird. app.get('/adminArea', authentication(request, response, next), showAdminArea(request, response))
ProjekteProjekte, die mit Express realisiert wurden:[9]
Literatur
WeblinksEinzelnachweise
|
Portal di Ensiklopedia Dunia