//服務端

//創建服務器
const net = require("net");
cosnt server = net.createServer();
server.listen(9000);

const clients = [];

//當用戶連接到服務器以后
server.on("connection",(client)=>{
//將所有的客戶端保存在一個數組中。當收到消息的時候,將這個消息給所有的用戶發送過去
client.id = clients.length;
clients.push(client);
console.log("有人連接進來了");

//接受客戶端傳來的消息
client.on("data",(data)=>{
//然后將這個發送給所有用戶
clients.map((item)=>{
if(item){
item.write(data);
}
})
})

//當客戶端斷開連接的時候將他從數組中移除

client.on("close",()=>{
clients[client.id] = null;
})
})

 

 

//客戶端
const net = require("net");
//創建文件讀寫流
const redline = require("readline");
const client = new.Socket();

const rl = readline.createInterface({
input:process.stdin,
output.process.stdout
})

//將buffer文件轉化成字符串
client.setEncoding("utf8")


//參數1:端口號,參數2: ip

client.connect(9000,"127.0.0.1",()=>{
//接受服務端發來的消息
client.on("data",(data)=>{
console.log(data);
})
});

//可以讓我們在終端上進行文件的讀寫
rl.on("line",(text)=>{
//發送消息
client.write(text);
})