【问题标题】:how to handle multiple websocket++ tabs/windows?如何处理多个 websocket++ 选项卡/窗口?
【发布时间】:2013-03-21 11:03:45
【问题描述】:

我正在尝试创建一个使用 websocket++ 作为其总骨干的网站,我刚刚意识到,如果用户打开多个选项卡/窗口,我可能会进退两难。

我正在编写spa 样式,其中所有 html 和大多数 css 和 js 都是预先加载的,每当用户单击上面的堆栈链接之一这样的链接时,它就会滑开旧的 div 和在新的幻灯片。使用 ajax 很容易,但任何使用 100% ajax 的人都知道不断更新的地狱。

Websockets 和 websocket++ 使自动更新和用户跟踪变得容易,但我不知道如何处理用户不喜欢我的所有 spa 编程并想要另一个选项卡/窗口大声笑的情况。

如果用户打开另一个选项卡/窗口,websocket++ 是否会自动为该选项卡/窗口分配另一个connection_hdl?如果是这样,我如何确保用户登录到新的选项卡/窗口?如果没有,我如何分离每个选项卡/窗口的用户跟踪?

【问题讨论】:

    标签: c++ websocket sessionid browser-tab websocket++


    【解决方案1】:

    到 WebSocket++ 服务器的每个连接都将获得自己唯一的connection_hdl。如果您从一个应用程序或多个选项卡/窗口/计算机中的同一个应用程序打开两个 WebSocket,就会发生这种情况。

    将给定的连接与用户相关联是一个相当广泛的问题。简而言之,就像使用非 websocket 方法一样,您需要为每个连接向服务器发送用户名/密码或会话令牌。如果您想在不同的选项卡/窗口之间实现类似单点登录的效果,您可以使用浏览器的持久客户端存储(cookie、本地存储等)来存储这些会话令牌。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-14
    • 1970-01-01
    • 1970-01-01
    • 2020-01-26
    • 2020-07-10
    • 1970-01-01
    相关资源
    最近更新 更多