Skip to main content
function Deno.upgradeHttp
Unstable

Allows "hijacking" the connection that the request is associated with. This can be used to implement protocols that build on top of HTTP (eg. WebSocket).

The returned promise returns underlying connection and first packet received. The promise shouldn't be awaited before responding to the request, otherwise event loop might deadlock.

function handler(req: Request): Response {
  Deno.upgradeHttp(req).then(([conn, firstPacket]) => {
    // ...
  });
  return new Response(null, { status: 101 });
}

This method can only be called on requests originating the Deno.serveHttp server.

Returns

Promise<[Deno.Conn, Uint8Array]>