看了TCP的有关知识,写了个基于NET的聊天室。
var net = require('net');
var count = 0,
  users = {};
var server = net.createServer(function (conn) {
  console.log('连接到');
  conn.write(
     "rn > welcome to node-chat!"
    + "rn > " + count + " other people are connected at this time."
    + "rn > please write your name and press enter: "
   );
  count++;
  // 代表当前连接的昵称
  var nickname;
  console.log(conn);
  conn.on('data', function (data) {
    // 删除rn
    // data = data.replace('rn', '  ');
    // 当前注册的昵称不存在
    if (!nickname) {
      // 用户名存在
      if(users[data]) {
        conn.write('nickname in use');
        return;
      } else {
        // 用户名给nickname
        nickname = data;
        users[nickname] = conn;
        for (var i in users) {
          users[i].write('rn > ' + nickname + ' join our room rn > I: ');
        }
      }
    } else {
      // 开始聊天
      for (var i in users) {
        if (i != nickname) {
          users[i].write('rn > ' + nickname + ': ' + data);
        }
      }
    } 
  });
  conn.on('close', function () {
    count--;
  });
  conn.setEncoding('utf8');
});
server.listen(3000, function () {
  console.log('服务器监听端口3000');
})
运行截图:
终端:
telnet 这里截取了两个网友 
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。