当用户与服务器断开连接时,我如何找到会话ID?
目前,我有一个丑陋的方法,要求所有现有客户发回消息。
例如,在服务器上:
socket.on('disconnect', function() {
// What’s the sessionid?
});
连接时,您可以将任何数据附加到套接字:
var clients = {}
var client_id = 0;
io.sockets.on('connection', function (socket) {
socket.client_id = client_id; // or your `session_id`
socket.anyData = "foobar";
clients[client_id] = socket;
client_id++;
socket.on("disconnect", function() {
console.log(this.anyData) // prints: foobar
delete clients[this.client_id];
}
}
socket.on('disconnect', function() {
console.log(this.id);
});
会给你关闭的套接字的ID,但这可能更像是一个破解…:)