【发布时间】:2015-08-09 02:03:52
【问题描述】:
我正在尝试构建 TCP 服务器/客户端聊天 到目前为止我的代码是
server.js
var net=require("net");
var sockets=[];
var server=net.createServer(function(socket){
console.log("new socket connected");
sockets.push(socket);
var sh="";
socket.on("data",function(data){
sh=sh+data;
});
socket.on("end",function(){
sockets.forEach(function(x){
if(x!==socket){
x.write("Dakto poveda :"+ sh);
sh="";
}
});
})
socket.on("close",function(){
console.log("Connection closed")
})
}).listen(8888)
和client.js
var net=require("net");
var client= new net.Socket();
client.connect(8888,function(){
console.log("Conncted");
client.write("Hello from client")
});
client.on("data",function(data){
console.log("data "+data)
});
client.on("close",function(){
console.log("Client closed");
client.write("client closed")
})
我启动 server.js 然后我打开新的 cmds 并在其中启动 client.js。在服务器 cmd 中写入客户端已连接,在客户端 cmd 中写入“已连接”,但未写入“来自客户端的您好”+问题是,我如何在这些客户端/服务器之间进行通信?当我启动这些文件时,我无法再写入 cmd
【问题讨论】: