我有一个Node.js WebSocket服务器,并且我想阻止客户端打开50个选项卡,这些选项卡将创建50个连接。我目前的想法是像这样检查IP地址:
ws._socket.remoteAddress
,然后根据我当前的连接IP进行检查,如果该IP已经存在,则拒绝连接请求。我的理解是,这种方法会有问题,因为如果两台计算机位于同一Wifi上,因此具有相同的公用IP,则第二台计算机将被阻止。这不是我想要的我想要每台计算机1个连接,因此IP可能不是解决方案。这是一个有效的问题,还是我的解决方案可以实际工作?唯一标识客户端计算机以防止该设备上的多个连接的最佳方法是什么?
答案 0 :(得分:0)
假设您控制客户端的连接,我将查看该浏览器中所有选项卡使用的共享Web worker。实际上,这将为您提供1个n个标签的连接。每个浏览器都是新连接,但最多可能只有3-4个连接?
这是一个链接。查看示例,因为它非常简洁地将其拼写为:https://developer.mozilla.org/en-US/docs/Web/API/SharedWorker