2025-04-18 03:22:29 +08:00

31 lines
878 B
TypeScript

// 创建 HTTP 服务器
const server = Deno.serve({ port: 8080 }, (req) => {
if (req.headers.get('upgrade') === 'websocket') {
const { socket, response } = Deno.upgradeWebSocket(req);
socket.addEventListener('open', () => {
console.log('a client connected!');
});
socket.addEventListener('message', (event) => {
if (event.data === 'ping') {
socket.send('pong');
}
});
return response;
}
return new Response('HTTP server running', {
status: 200,
});
});
// 注释掉有问题的代码,使用上面的 Deno.serve API
// const server2 = Deno.listen({ port: 8080 });
//
// for await (const conn of server2) {
// const httpConn = Deno.serveHttp(conn);
// for await (const requestEvent of httpConn) {
// console.log(requestEvent);
// }
// }
console.log('WebSocket server running on http://localhost:8080');