0
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2025-02-21 04:42:51 -05:00
denoland-deno/tests/specs/npm/ws_compat/main.ts
2025-01-27 11:47:32 +09:00

24 lines
702 B
TypeScript

import WebSocket from "npm:ws@8.18.0";
const key = Deno.readTextFileSync("../../../testdata/tls/localhost.key");
const cert = Deno.readTextFileSync("../../../testdata/tls/localhost.crt");
Deno.serve({ key, cert, port: 0, onListen }, (req) => {
const { socket, response } = Deno.upgradeWebSocket(req);
socket.addEventListener("open", () => {
console.log("open on server");
});
socket.addEventListener("message", () => {
console.log("message on server");
Deno.exit(0);
});
return response;
});
function onListen({ port }) {
const socket = new WebSocket(`wss://localhost:${port}`);
socket.on("open", () => {
console.log("open on client");
socket.send("hi");
});
}