WebSocket
O Empilha delega o upgrade ao servidor nativo do Bun por meio de upgradeWebSocket().
ts
import { upgradeWebSocket } from "empilha/http";
const result = upgradeWebSocket(request, server, {
userId: "42",
});
if (result) return result;
// O Bun aceitou o upgrade; o handler WebSocket assume a conexão.O terceiro argumento é opcional e fica disponível como data nos callbacks do servidor Bun. Quando o upgrade é aceito, o helper retorna undefined. Quando o servidor rejeita a negociação, retorna uma resposta 400.
server precisa expor o método nativo upgrade(request, options), como o objeto recebido na configuração de Bun.serve().
Quando usar SSE
Use SSE quando apenas o servidor precisa enviar eventos. Use WebSocket quando cliente e servidor precisam trocar mensagens na mesma conexão.