javascript - 在 Socket.IO 中限制每台计算机/用户连接的套接字

标签 javascript node.js socket.io

如何限制每台计算机/用户连接到 Socket.IO 服务器的套接字数量?

我知道我可以使用 session ,但如果用户尝试使用多个网络浏览器,那将毫无用处。
在这种情况下也可以使用 IP 地址,但是如果我使用 IP 地址,那么它会阻止同一路由器(相同 IP 地址)后面的其他用户连接到服务器

还有什么建议吗?

最佳答案

您只能通过以下方式限制连接:

a) IP,你说你不想要
b) 浏览器,因为你可以记住 cookie(但是如果有人用 Chrome 打开多个“隐身”标签,它可以绕过这个;如果他们打开另一个浏览器,他们也可以绕过这个)

您无法确定用户是否在路由器后面。

我的建议:

同时受ip和浏览器限制:设置一个ip的最大连接数,同一个浏览器只允许一个连接。

关于javascript - 在 Socket.IO 中限制每台计算机/用户连接的套接字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8445611/

相关文章:

javascript - Webpack 语法错误 : Unexpected token =>

node.js - Mongoose 类型与 'DeepPartial<Document>' 类型没有共同属性

node.js - 在docker镜像 Node :7中升级或安装Ghostscript 9.21

javascript - Ubuntu 为 Node.js 打开/解锁端口

node.js - node.js 子进程中的 socket.io-client Web 套接字连接失败

javascript - 访问 Node-Red websocket 监听器

javascript - javascript 循环引用是如何工作的?

javascript - 如何在Electron.js中最小化和最大化?

javascript - 在nodejs中制作异步回调函数

javascript - 浏览器中的 Socket.io 服务器