Socket.io 是一个流行的 WebSocket 库,可以用于实时双向通信。在许多 Web 应用程序中,我们需要知道当前聊天室中有多少人在线。在这篇文章中,我们将学习如何使用 Socket.io API 获取在线用户数量。
步骤
首先,我们需要创建一个 Socket.io 服务器并建立连接,代码示例如下:
const io = require('socket.io')(server); io.on('connection', (socket) => { // 当有新用户进入聊天室时触发 });
当有新用户加入聊天室时,我们可以将其添加到一个 Set 对象中,然后获取该集合的大小来得到在线用户数量。以下是完整的代码示例:
-- -------------------- ---- ------- ----- ----------- - --- ------ ------------------- -------- -- - -- -------------- --------------------------- -- ------------ ----------------------- -- -- - -- --------------- ------------------------------ --- -- ------------ -------------------------- ------------------ ---
通过上述代码,我们将会实时地向客户端发送在线用户数量。当有新用户加入或离开聊天室时,集合的大小将相应地更新,并发送给所有已经连接的客户端。
总结
在本文中,我们学习了如何使用 Socket.io 在聊天室中获取在线用户数量。我们创建了一个包含所有在线用户 ID 的集合,并在新用户加入或离开聊天室时更新该集合。通过向客户端发送在线用户数量,我们可以实时地显示当前聊天室中的人数。
希望这篇文章能够帮助你更好地理解 Socket.io API,并能够在自己的项目中运用起来!
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/30335