Simple
Start a simple WebSocket server using JSTime.serve.
Inside fetch, we attempt to upgrade incoming ws: or wss: requests to WebSocket connections.
const server = JSTime.serve<{ authToken: string }>({ fetch(req, server) { const success = server.upgrade(req); if (success) { // JSTime automatically returns a 101 Switching Protocols // if the upgrade succeeds return undefined; }
// handle HTTP request normally return new Response("Hello world!"); }, websocket: { // this is called when a message is received async message(ws, message) { console.log(`Received ${message}`); // send back a message ws.send(`You said: ${message}`); }, },});
console.log(`Listening on localhost:\${server.port}`);