Middleware
Eine Funktion, die eine Response zurückgibt, nennen wir „Handler“. „Middleware“ wird vor und nach dem Handler ausgeführt und verarbeitet die Request und die Response. Das entspricht einem Aufbau aus Schichten wie bei einer Zwiebel.

Eine Middleware zum Hinzufügen des Headers „X-Response-Time“ lässt sich beispielsweise so schreiben.
ts
app.use(async (c, next) => {
const start = performance.now()
await next()
const end = performance.now()
c.res.headers.set('X-Response-Time', `${end - start}`)
})Mit diesem einfachen Ansatz können wir eigene Middleware schreiben sowie integrierte Middleware oder Middleware von Drittanbietern verwenden.