From 65916be14e90cbe334fe1db57c1cd7bcd33c2b03 Mon Sep 17 00:00:00 2001 From: Mqx <62719703+Mqxx@users.noreply.github.com> Date: Wed, 29 Mar 2023 14:44:34 +0200 Subject: [PATCH] Create WebSocketServer.ts --- WebSocketServer.ts | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 WebSocketServer.ts diff --git a/WebSocketServer.ts b/WebSocketServer.ts new file mode 100644 index 0000000..2ae529a --- /dev/null +++ b/WebSocketServer.ts @@ -0,0 +1,12 @@ +export function WebSocketServer(options : Deno.ServeOptions | Deno.ServeTlsOptions, handler : (webSocket : WebSocket) => void) { + Deno.serve(options, (request) => { + if (request.headers.get("upgrade") != "websocket") { + return new Response(null, { status: 501 }); + } + const {socket, response} = Deno.upgradeWebSocket(request) + + handler(socket) + + return response + }) +}