HttpServerBackend
Dieser Inhalt ist noch nicht in deiner Sprache verfügbar.
Defined in: src/http/backend/HttpServerBackend.ts:64
Pluggable HTTP server abstraction. Backends translate our generic route registrations to their native framework (Fastify, Bun.serve, Express, …). The DSL only ever talks to this interface.
Properties
Section titled “Properties”
readonlyname:string
Defined in: src/http/backend/HttpServerBackend.ts:65
Methods
Section titled “Methods”listen()
Section titled “listen()”listen(
host,port):Promise<ServerBinding>
Defined in: src/http/backend/HttpServerBackend.ts:71
Start listening. Returns a ServerBinding with the actual bound port.
Parameters
Section titled “Parameters”string
number
Returns
Section titled “Returns”Promise<ServerBinding>
registerRoute()
Section titled “registerRoute()”registerRoute(
route):void
Defined in: src/http/backend/HttpServerBackend.ts:68
Register all routes before listen is called. Duplicate paths must be rejected.
Parameters
Section titled “Parameters”Returns
Section titled “Returns”void
registerWebSocket()?
Section titled “registerWebSocket()?”
optionalregisterWebSocket(reg):void
Defined in: src/http/backend/HttpServerBackend.ts:94
Optional capability: register a WebSocket endpoint. Backends that
implement this support websocket() routes; absence is detected by
HttpExtension.bind and reported as a clear error.
Parameters
Section titled “Parameters”Returns
Section titled “Returns”void
setDefaultResponseHeaders()?
Section titled “setDefaultResponseHeaders()?”
optionalsetDefaultResponseHeaders(headers):void
Defined in: src/http/backend/HttpServerBackend.ts:107
Optional: replace the header map the backend writes ahead of every response it emits — including the error, not-found and upgrade-reject responses no middleware ever sees. A response’s own header must still win, so these are written first and overwritten, not merged over.
HttpExtension wires withSecurityHeaders(...) here and passes {}
for the opt-out. It is only called when that was configured: a backend
comes with its own default (DEFAULT_RESPONSE_SECURITY_HEADERS
for the shipped ones), so an untouched builder must not overwrite it.
Parameters
Section titled “Parameters”headers
Section titled “headers”Readonly<Record<string, string>>
Returns
Section titled “Returns”void
setErrorHandler()?
Section titled “setErrorHandler()?”
optionalsetErrorHandler(handler):void
Defined in: src/http/backend/HttpServerBackend.ts:87
Optional: register a last-resort error handler. It MUST see both
errors thrown by route handlers AND backend-internal errors (body
parsing, etc.); if it throws, the backend falls back to its default
error mapping. HttpExtension wires withErrorHandler here.
Parameters
Section titled “Parameters”handler
Section titled “handler”(err, request) => HttpResponse | Promise<HttpResponse>
Returns
Section titled “Returns”void
setNotFound()?
Section titled “setNotFound()?”
optionalsetNotFound(handler):void
Defined in: src/http/backend/HttpServerBackend.ts:79
Optional: register a method-agnostic not-found handler, invoked for
any request that matched no route (including unmatched OPTIONS/HEAD).
HttpExtension wires fallback() here. If the handler throws, the
backend applies its default error mapping.
Parameters
Section titled “Parameters”handler
Section titled “handler”(request) => HttpResponse | Promise<HttpResponse>
Returns
Section titled “Returns”void
