什么时候发生了nodejs net模块中的“连接”事件?

我有这个简单的TCP服务器:

var net = require('net'); var server = net.createServer(function (socket) { socket.on('connect', function() { console.log("New client!"); }); }); server.listen(8000, function(){ console.log("server running...") }); 

然后我有另一个文件client.js

 var net = require('net'); var client = net.connect({port: 8000}, function() { console.log('client connected'); }); client.on('error', console.error); 

我在一个terminal窗口中运行服务器,然后在其他窗口中运行客户端,并希望看到服务器日志“新客户端”。 虽然,这并没有发生。 那么,什么时候“连接”事件准确发射?

net.createServer将给定的函数设置为connection事件的侦听器。

换句话说,在服务器端, 当您得到callback时套接字已经连接 ,并且您正在尝试收听的事件不会在已连接的套接字上发出。

我做了一个不同的testing。 服务器对象具有“超时”属性。 当您拨打以下代码时:

server.setTimeout(500); //现在0.5秒后,你可以调用“连接”事件。 默认值是120000。

但是,我仍然不知道这个改变会导致什么。