test deno

This commit is contained in:
2025-04-18 03:22:29 +08:00
parent d93af32354
commit a54ba4d823
25 changed files with 1989 additions and 25 deletions

5
deno-server/server.ts Normal file
View File

@@ -0,0 +1,5 @@
const server = Deno.serve(async (req) => {
return new Response('Hello, World!');
});
console.log(server);

30
deno-server/ws-server.ts Normal file
View File

@@ -0,0 +1,30 @@
// 创建 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');