//构建简单的TCP聊天服务器
var net=require('net');
var server=net.createServer();
//存放所有连接
var sockets=[];
server.on('connection',(socket)=>{
console.log('连接');
socket.setEncoding('utf8');
//存连接
sockets.push(socket);
//从连接中读取数据
socket.on('data',(data)=>{
console.log('得到数据:',data);
//一旦连接的用户输入数据,将数据广播给所有其他已连接的用户
sockets.forEach((otherSocket)=>{
if(otherSocket!==socket){
otherSocket.write(data);
}
});
});
//删除被关闭的连接
socket.on('close',()=>{
console.log('服务连接关闭');
const index=sockets.indexOf(socket);
sockets.splice(index,1);
});
});
server.on('error',function(err){
console.log('服务错误:',err.message);
})
server.on('clsoe',function(){
console.log('服务关闭');
})
server.listen(4001);