Skip to content

WebSocketUpgradeHandler

type WebSocketUpgradeHandler<D extends InjectMap = {}, T extends WebSocketDescriptor = {}> = (upgrade: WebSocketUpgrade, scope: WebSocketUpgradeHandlerScope<D, T>) => WebSocketUpgradeResult | Promise<WebSocketUpgradeResult>

The upgrade hook: runs BEFORE the handshake completes, in request scope (no socket exists yet). Return a WebSocketUpgradeResult; a throw takes the transport’s error path. The one pre-handshake gate: the WS analog of a Durable Object mount’s resolve handler.

Learn: Inline handlers