Skip to content

ExpressBackend

Defined in: src/http/backend/ExpressBackend.ts:73

Express-backed HTTP backend — drop-in alternative to the Fastify default. Intended for teams that already have an Express-based plugin ecosystem (session stores, auth, observability) they want to reuse.

express is an optional peer dependency: install it only if you use this backend. When no app is injected, the backend imports express dynamically and builds a fresh one.

new ExpressBackend(options?): ExpressBackend

Defined in: src/http/backend/ExpressBackend.ts:84

ExpressBackendOptions = {}

ExpressBackend

readonly name: "express" = 'express'

Defined in: src/http/backend/ExpressBackend.ts:74

HttpServerBackend.name

getApp(): ExpressAppLike

Defined in: src/http/backend/ExpressBackend.ts:91

Inject / access the underlying Express app — useful for native middleware.

ExpressAppLike


listen(host, port): Promise<ServerBinding>

Defined in: src/http/backend/ExpressBackend.ts:108

Start listening. Returns a ServerBinding with the actual bound port.

string

number

Promise<ServerBinding>

HttpServerBackend.listen


registerRoute(route): void

Defined in: src/http/backend/ExpressBackend.ts:96

Register all routes before listen is called. Duplicate paths must be rejected.

RouteRegistration

void

HttpServerBackend.registerRoute


setErrorHandler(handler): void

Defined in: src/http/backend/ExpressBackend.ts:104

Optionally register a global error handler.

(err, req) => HttpResponse | Promise<HttpResponse>

void

HttpServerBackend.setErrorHandler


setNotFound(handler): void

Defined in: src/http/backend/ExpressBackend.ts:100

Optionally register a catch-all not-found handler.

(req) => HttpResponse | Promise<HttpResponse>

void

HttpServerBackend.setNotFound