javascript - WebSockets 如何处理 2 个或更多相同的用户窗口

标签 javascript html websocket

例如,一个用户已进入我的网站,并且我的 websocket 服务器接受了连接,然后用户打开一个新窗口,我应该如何处理该新连接,我应该拒绝用户还是将他视为新用户?,还需要更多的循环来更新两个窗口中的信息,有什么提示吗?

我现在无法理解,请解释一下它应该如何是最合乎逻辑的解决方案?

最佳答案

您应该将其视为具有不同连接的同一用户。

您可以通过 cookie 值或连接后发送的本地存储中的值来识别用户。如果刷新或打开新选项卡,仍被视为同一连接。

您可以通过 url 或 session 存储中的随机 ID 来识别连接。如果刷新选项卡,它将被视为相同的连接,并将重新连接。

如果您熟悉 .NET,我有一个关于 Terminal Server via WebSocket 的小项目使用这种方法。

在此示例中,同一用户可以打开独立的选项卡,并且在这些选项卡中他仍被视为同一用户。

关于javascript - WebSockets 如何处理 2 个或更多相同的用户窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25899989/

相关文章:

javascript - Jquery Accordion - 使点击的元素滚动到页面顶部

javascript - 如何正确使用createSpyObj

javascript - 如何将 Canvas 保存到图像对象?

java - 在 Spring Boot 应用程序的 WebSocketConfigurer 中使用 @PathParam(javax.websocket.server.PathParam)

erlang - Yaws websocket 向所有连接的用户发送消息

javascript - 在浏览器上呈现转义的 XML

javascript - Meteor simple todos server/main.js 和 client/main.js 有什么区别?

javascript - 如何更改 Angular 库组件中使用的垫卡的样式

html - 使用 CSS 设置的背景颜色未覆盖列表的最后一个元素

php - 如何使用 Ratchet 获取 Connection 对象并发送消息