html5中文学习网

您的位置: 首页 > 网站及特效实例 > javascript特效 » 正文

Node.js制作简单聊天室_node.js_

[ ] 已经帮助:人解决问题

看了TCP的有关知识,写了个基于NET的聊天室。EMEHTML5中文学习网 - HTML5先行者学习网

EMEHTML5中文学习网 - HTML5先行者学习网

var net = require('net');var count = 0,  users = {};var server = net.createServer(function (conn) {  console.log('连接到');  conn.write(     "/r/n > welcome to node-chat!"    + "/r/n > " + count + " other people are connected at this time."    + "/r/n > please write your name and press enter: "   );  count++;  // 代表当前连接的昵称  var nickname;  console.log(conn);  conn.on('data', function (data) {    // 删除/r/n    // data = data.replace('/r/n', '  ');    // 当前注册的昵称不存在    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('/r/n > ' + nickname + ' join our room /r/n > I: ');        }      }    } else {      // 开始聊天      for (var i in users) {        if (i != nickname) {          users[i].write('/r/n > ' + nickname + ': ' + data);        }      }    }   });  conn.on('close', function () {    count--;  });  conn.setEncoding('utf8');});server.listen(3000, function () {  console.log('服务器监听端口3000');})

运行截图:EMEHTML5中文学习网 - HTML5先行者学习网

终端:EMEHTML5中文学习网 - HTML5先行者学习网

EMEHTML5中文学习网 - HTML5先行者学习网

telnet 这里截取了两个网友 EMEHTML5中文学习网 - HTML5先行者学习网
EMEHTML5中文学习网 - HTML5先行者学习网

EMEHTML5中文学习网 - HTML5先行者学习网

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。EMEHTML5中文学习网 - HTML5先行者学习网

(责任编辑:)
推荐书籍
推荐资讯
关于HTML5先行者 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助