# 示例2 聊天室 ## 客户端 ```html WebSocket Demo
``` ## 服务端 ```js // server.js const ws = require("nodejs-websocket") // 端口号 const PORT = 8080; // 所有用户数 var count = 0; // 监听事件 var server = ws.createServer(function (conn) { console.log("New connection") count++; conn.user_name = "用户" + count; broadcast(conn.user_name + "加入了聊天室"); // 接收客户端发送的数据 conn.on("text", function (data) { console.log("Received "+data) // conn.sendText(data) broadcast(conn.user_name + ":" + data) }) // 客户端断开 conn.on("close", function (code, reason) { console.log("Connection closed") broadcast(conn.user_name + "离开了聊天室") }) // 客户端异常 conn.on("error", function (err) { console.log('异常') }) }) // 广播给所有用户 function broadcast(msg){ server.connections.forEach(function (conn) { conn.sendText(msg) }) } // 启动服务 server.listen(PORT, () => { console.log(`Server started on port ${PORT}`) }) ```