Enable websockets with Bun.serve
For simpler type safety, see Bun.websocket
Symbol
Enable websockets with Bun.serve
For simpler type safety, see Bun.websocket
Bun.serve({
websocket: {
open: (ws) => {
console.log("Client connected");
},
message: (ws, message) => {
console.log("Client sent message", message);
},
close: (ws) => {
console.log("Client disconnected");
},
},
fetch(req, server) {
const url = new URL(req.url);
if (url.pathname === "/chat") {
const upgraded = server.upgrade(req);
if (!upgraded) {
return new Response("Upgrade failed", { status: 400 });
}
}
return new Response("Hello World");
},
});
Upgrade a Request to a ServerWebSocket via Server.upgrade
Pass data
in @{link Server.upgrade} to attach data to the ServerWebSocket.data property