Допустим есть у меня чат на сокетах. Я хочу сделать так, чтобы писать в чат могли только те, кто имеет авторизировался на сайте(если есть значение в $_SESSION['login']) . Как идентифицировать пользователя в сокетах?
Есть сервер на том же домене, то на сервер будут переданы те же самые куки, какие при обычном запросе.
Если сервер другой, то при коннекте к WS серверу сначала посылаем токен для авторизации (пусть это будет PHPSESSID), далее работаем как с авторизованным юзером.
это не решение потому что:
-при перезагрузке страницы повторное подключение к сокетах приведёт к создание нового сокет-соединения, которое нельзя будет идентифицировать
-кто-нибудь может приконнектиться вручную
Есть сервер на том же домене, то на сервер будут переданы те же самые куки, какие при обычном запросе.
Если сервер другой, то при коннекте к WS серверу сначала посылаем токен для авторизации (пусть это будет PHPSESID), далее работаем как с авторизованным сервером.
Да, при каждой перезагрузки будет новое соединение.
Да, присоединиться может кто угодно вручную, но без авторизации - сервер его просто должен посылать.