Node.js实现简单聊天服务器
来源: 阅读:1732 次 日期:2014-07-16 18:44:08
温馨提示: 小编为您整理了“Node.js实现简单聊天服务器”,方便广大网友查阅!

Node.js 是一个基于Chrome JavaScript运行时建立的一个平台, 用来方便地搭建快速的,易于扩展的网络应用,今天我们来探讨下,如何使用node.js实现简单的聊天服务器

使用Nodejs是如此简单的实现了一个简单的聊天服务器

实现代码如下:

var net = require('net');

var chatServer = net.createServer(),clientList = [];

chatServer.on("connection",function(client){

  client.name = client.remoteAddress + ":" + client.remotePort;

  client.write("Hi! "+client.name+" \n");

  clientList.push(client);

  client.on("data",function(data){

    //数据发送给客户端

    broadcast(data,client);

    // clientList[i].write(data);

  });

  client.on("end",function(){

    clientList.splice(clientList.indexOf(client),1);

  });

  client.on("error",function(e){

    console.log(e)

  });

});

chatServer.listen(9000)

function broadcast(message,client){

  var cleanup = [];

  for(var i=0;i<clientList.length;i++){

    if(client != clientList[i]){

      if(clientList[i].writable){

        clientList[i].write(client.name = "says:"+message);

      }else{

        cleanup.push[clientList[i]];

        clientList[i].destory();

      }

    }

  }

}使用过程就是:

启动js

node chat.js连接方式:telnet

telnet 127.0.0.1 9000

更多信息请查看IT技术专栏

更多信息请查看网络编程
由于各方面情况的不断调整与变化, 提供的所有考试信息和咨询回复仅供参考,敬请考生以权威部门公布的正式信息和咨询为准!
关于我们 | 联系我们 | 人才招聘 | 网站声明 | 网站帮助 | 非正式的简要咨询 | 简要咨询须知 | 加入群交流 | 手机站点 | 投诉建议
工业和信息化部备案号:滇ICP备2023014141号-1 云南省教育厅备案号:云教ICP备0901021 滇公网安备53010202001879号 人力资源服务许可证:(云)人服证字(2023)第0102001523号
云南网警备案专用图标
联系电话:0871-65317125(9:00—18:00) 获取招聘考试信息及咨询关注公众号:
咨询QQ:526150442(9:00—18:00)版权所有:
云南网警报警专用图标
Baidu
map