我正在尝试创建一个使用websocket++作为其主干的网站,我刚刚意识到,如果用户打开多个标签/窗口,我可能会进退两难。
我正在编写spa样式,其中所有的div和大多数css & js都是预先加载的,每当用户单击一个链接,就像上面的堆栈链接一样,它只是简单地滑走旧的js,并在新的js中滑动。使用ajax很容易做到这一点,但是任何使用100% ajax的人都知道不断更新的地狱。
Websockets和websocket++使得自动更新和用户跟踪变得容易,但我不知道如何处理用户不喜欢我所有的spa编程并想要另一个选项卡/窗口的情况。
如果用户打开另一个选项卡/窗口,websocket++是否会自动为该选项卡/窗口分配另一个connection_hdl?如果是,我如何确保用户登录到新的选项卡/窗口?如果没有,我如何区分每个选项卡/窗口的用户跟踪?
发布于 2013-03-31 10:14:48
到WebSocket++服务器的每个连接都将获得其自己唯一的connection_hdl。如果您从一个应用程序打开两个WebSocket,或者在多个选项卡/窗口/计算机中打开同一个应用程序,就会发生这种情况。
将给定的连接与用户关联是一个相当广泛的问题。简而言之,与非websocket方法一样,您需要为每个连接向服务器发送用户名/密码或会话令牌。如果你想在不同的标签/窗口之间实现类似单点登录的效果,你可以使用浏览器的持久客户端存储(cookie、本地存储等)来存储这些会话令牌。
https://stackoverflow.com/questions/15725376
复制相似问题