我有这个简单的node.js Servercode使用socket.io(1.5):
var io = require('socket.io').listen(8080);
io.on('connection', function(socket) {
console.log(' %s sockets connected', io.engine.clientsCount);
socket.on('disconnect', function() {
console.log("disconnect: ", socket.id);
});
});
Run Code Online (Sandbox Code Playgroud)
如果我运行此代码并按F5几次,在某些情况下会创建新连接,然后再断开旧连接.过了一段时间,我认为它的Heartbeat Timout,所有的连接将被关闭.看结果:
2 sockets connected
3 sockets connected
4 sockets connected
5 sockets connected
6 sockets connected
7 sockets connected
8 sockets connected
9 sockets connected
10 sockets connected
11 sockets connected
disconnect: 0h_9pkbAaE3ftKT9AAAL
11 sockets connected
12 sockets connected
13 sockets connected
14 sockets connected
disconnect: oB4HQRCOY1UIvvZkAAAP
14 sockets connected
15 sockets connected
disconnect: LiIN0oDVoqbePgxFAAAR
15 sockets …Run Code Online (Sandbox Code Playgroud) 我们可以跟踪此代码是建立还是断开连接
console.log('a user connected');
socket.on('disconnect', function () {
console.log('user disconnected');
});
Run Code Online (Sandbox Code Playgroud)
好吧,很好.但是我们如何确定用户连接或脱机的用户.我的客户端是用户编写的,PHP/HTML所以他们有一个用户ID.