nodejs基礎(node學習第一篇) -开发者知识库

nodejs基礎(node學習第一篇) -开发者知识库,第1张

1.創建一個聊天服務器 TCP 支持Telnet 連接

 1 // 創建TCP
 2 var net = require('net');
 3 var chatServer = net.createServer(),
 4 // 保存客戶端
 5 clientList = [];
 6 chatServer.on('connection', function(client) {
 7 client.name = client.remoteAddress   ':'   client.remotePort;
 8 client.write('hi'   client.name   '\n');
 9 // 添加客戶端
10 clientList.push(client);
11 // 開始
12 client.on('data', function(data) {
13 broadcast(data, client)
14 });
15 // 結束
16 client.on('end', function() {
17 clientList.splice(clientList.indexOf(client), 1)
18 })
19 // 錯誤
20 client.on('error', function(e) {
21 console.log(e)
22 })
23 });
24 
25 function broadcast(message, client) {
26 var cleanup = [];
27 for (var i = 0; i < clientList.length; i  = 1) {
28 if (client !== clientList[i]) {
29 if (cleantList[i].writable) {
30 clientList[i].write(client.name   " says "   message)
31 } else {
32 // 銷毀退出的客戶id 內存
33 cleanup.push(clientList[i])
34 clientList[i].destroy()
35 }
36 }
37 }
38 // 消除垃圾索引
39 for (i = 0; i < cleanup.length; i  = 1) {
40 clientList.splice(clientList.indexOf(cleanup[i]), 1)
41 }
42 }
43 
44 chatServer.listen(8080)

最佳答案:

本文经用户投稿或网站收集转载,如有侵权请联系本站。

发表评论

0条回复