server.js
var net = require('net'); // 加载网络模块
var clients = 0; // 创建ID来引用连接的每一个客户端
var server = net.createServer(function(client) {
clients++;
var clientId = clients; // 当客户端连接时,ID自增,并且存放在当前局部作用域下
console.log('Client connected:', clientId);
client.on('end', function() { // 绑定end事件来追踪客户端断开连接
console.log('Client disconnected: ', clientId);
});
client.write('Welcome client: ' + clientId); // 使用客户端的ID给每个客户端打个招呼
client.pipe(client); // 使用管道把客户端的数据返回给客户端
});
server.listen(8000, function() {
console.log('Server started on port 8000'); // 绑定到8000端口开始接收新连接
})
运行node server.js来启动服务,然后运行telnet localhost 8000来连接。你能够连接数次来查看ID自增。如果你断开连接,含有正确客户端ID的消息将会被打印。