Как обрабатывать несколько вкладок / окон Websocket ++?

Я пытаюсь создать сайт, который использует websocket ++ в качестве его общей основы, и я только что понял, что у меня может быть дилемма, если пользователь открывает несколько вкладок / окон.

я пишу спа стиль, где все HTML и CSS & js загружаются сразу, и всякий раз, когда пользователь щелкает ссылку, например, одну из ссылок в стеке, она просто удаляет старую div и скользит по новой. Это легко с ajax, но любой, кто делает 100% Ajax, знает адское постоянное обновление.

Websockets и websocket ++ упрощают автообновление и отслеживание пользователей, но я не знаю, как справиться с ситуацией, когда пользователь не ценит все мои программы программирования spa и хочет еще одну вкладку / окно.

Если пользователь открывает другую вкладку / окно, websocket ++ автоматически назначит другую вкладку / окно connection_hdl? Если так, как я могу гарантировать, что пользователь вошел в новую вкладку / окно? Если нет, как я могу отделить отслеживание пользователей для каждой вкладки / окна?

1

Решение

Каждое соединение с сервером WebSocket ++ получит свой уникальный connection_hdl, Это произойдет, если вы откроете два WebSocket из одного приложения или одного и того же приложения в нескольких вкладках / окнах / компьютерах.

Связать данное соединение с пользователем — довольно широкий вопрос. Короче говоря, как и в случае методов, не связанных с веб-сокетами, вам потребуется отправлять имя пользователя / пароль или токен сеанса на сервер для каждого соединения. Если вам нужен эффект единого входа между различными вкладками / окнами, вы можете использовать постоянное клиентское хранилище (куки, локальное хранилище и т. Д.) Браузера для хранения этих токенов сеанса.

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]