获取在线用户
在客户端,我们要先获取当前有哪些用户在线,才方便选择相应用户进行单聊。在每个客户端成功连接后,服务端都会广播 users 事件,并且把当前登录的所有用户名都发送过去。因此在客户端想要获取在线用户,只需监听 users 事件即可,代码如下。
socket.on("users", function (result) {
let users = result.users;
for (let index = 0; index < users.length; index++) {
let username = users[index];
console.log(username);
}
});
users 事件虽然不是 socketio 内置的,但是没有关系,服务端通过 emit 发送的任何事件,客户端都可以通过 socket.on 进行监听,无论事件是不是内置的。