Routing

Express ermöglicht das Definieren von Routen, um HTTP-Anfragen zu verarbeiten.

Route Methods

Jede HTTP-Methode hat in Express eine eigene Funktion:

app.get("/users", (req, res) => { res.send("GET Users"); });
app.post("/users", (req, res) => { res.send("POST User"); });
app.put("/users/:id", (req, res) => { res.send(`PUT User ${req.params.id}`); });
app.delete("/users/:id", (req, res) => { res.send(`DELETE User ${req.params.id}`); });

Route Paths

Routen können statisch oder dynamisch sein:

  • Statisch: /about

  • Dynamisch mit Parametern: /users/:id

Route Parameters

app.get("/users/:id", (req, res) => {
  res.send(`User ID: ${req.params.id}`);
});

Query Strings

app.get("/search", (req, res) => {
  res.send(`Suchbegriff: ${req.query.q}`);
});

Headers

app.get("/check-header", (req, res) => {
  res.send(`User-Agent: ${req.headers["user-agent"]}`);
});

2. Static Serving

Statische Dateien (HTML, CSS, JS, Bilder) können direkt ausgeliefert werden:

app.use(express.static("public"));

➡️ Alle Dateien im Ordner /public sind dann unter ihrer URL erreichbar, z. B. http://localhost:3000/style.css.


3. Middleware

Middleware sind Funktionen, die vor oder nach einer Anfrage ausgefĂĽhrt werden.

Arten:

  • Built-in: z. B. express.json() (fĂĽr JSON-Body)

  • Third-Party: z. B. morgan (Logging)

  • Custom: Eigene Middleware-Funktionen

// Built-in
app.use(express.json());

// Third-Party
const morgan = require("morgan");
app.use(morgan("dev"));

// Custom
app.use((req, res, next) => {
  console.log(`${req.method} ${req.url}`);
  next(); // Weiter zur nächsten Middleware
});

âś… Zusammenfassung:

  • Routing: steuert Anfragen ĂĽber Methoden, Pfade, Params, Queries & Header.

  • Static Serving: liefert Dateien direkt aus.

  • Middleware: zentrale Bausteine fĂĽr Verarbeitung, Logging, Sicherheit & Daten-Parsing.


Möchtest du, dass ich dazu auch ein komplettes Beispielprojekt (app.js) baue, das alle Punkte kombiniert?

Last updated