提问下 一个websocket 聊天小软件的问题 内详
ws.on(‘close’, function(){ }); 用户失去连接的时候触发的时间
我如何获取用户信息?我想得到这个失去连接的用户信息 要如何去做 代码在下面
var clients = new Array();
var userList = [];
var userId = 0;
var idList = [];
var uname;
var t=0;
wss.on(‘connection’, function(ws){
clients.push([ws,userId]);
idList.push(userId);
++userId;
ws.on(‘message’, function(msg){
});
ws.on('close', function(){
});
晓得的帮帮忙 谢谢拉
3 回复
个人见解,你可以在connection事件的回调函数中增加几个变量,连接成功后用户的信息(比如用户名等)就可以保存在这些变量中。然后在用户失去连接的时候,就可以在close事件的回调函数中通过闭包的方式获取这些信息了。不知道能不能帮到你,也欢迎更多的高手来帮忙。
var clients = {};
wss.on('connection', function(ws){
clients.push([ws,userId]);
var cid = client.id;
clients[cid]=[ws,'另外的一些信息'];
ws.on('disconnect',function(){
delete clients[cid][0];
console.log('Client['+cid+'] has disconnected');
console.log('User info '+clients[cid][1]);
});
});
谢谢大家的回答