首页 > 解决方案 > 客户端 Socket.io 覆盖或处理断开连接事件

问题描述

大家好,我正在使用 Socket.io 但我有一个问题。有两种类型的客户端,带有自定义事件的客户端“A”和带有其他一些自定义事件的客户端“B”,但问题在于:

所有客户端的断开连接事件都是相等的,并且根据 socket.io 无法覆盖和调用“A_disconnect”或“B_disconnect”,而只能调用“断开连接”事件,那么我如何才能注意到客户端 A 或客户端 B 是否断开连接?

标签: socket.io

解决方案


您是否尝试将客户端类型存储到服务器级别的地图/数组中?(例如,在所有服务器时间都存在的全局集合)

您将连接期间的客户端类型和引用保存到映射/数组中,因此当您拦截断开连接时,您可以根据之前存储的客户端类型调用适当的方法。

另一种方法是连接 socket.io 实例上的客户端 A 和另一个实例上的客户端 B,但这不能很好地扩展,我认为在你的情况下不是一个好的选择。

希望这有助于给你一些提示。

干杯


推荐阅读