首页 > 解决方案 > 有没有办法让套接字中间件用于发送的数据包?

问题描述

因此,我的应用程序使用服务器上生成的名称来路由 socket.io 数据包。这适用于我的服务器之间的数据包,但我刚刚实现了一个 Web API,它无法访问生成名称所需的列表(列表大约有 13000 个条目,服务器流式传输文件并使用随机生成的索引提取名称部分,所以我确定我不能在浏览器上执行此操作)。

因此,为了弥合服务器端“名称”之间的差距,我让客户端生成一个唯一编号,服务器生成或查找名称。这是通过套接字中间件查找具有这些 id 的数据包并自动转换它们来完成的。

但是,要将数据包发送回去,我必须“手动”将名称转换回客户端的唯一编号。我想要一个中间件来做到这一点,但我很确定没有用于传出数据包的中间件。

我目前的选择是对该功能进行猴子修补socket.emit,但感觉很脏,而且不如放入socket.use.

那么,处理这个用例的更好方法是什么(除了猴子补丁socket.emit)?或者猴子修补socket.emit是最好的途径?

标签: javascriptsocket.iomiddleware

解决方案


推荐阅读