У меня есть онлайн-игра. Я хочу показать, сколько пользователей в сети. Проблема заключается в том, чтобы знать, когда пользователь находится в автономном режиме. Есть ли способ выполнить проверку cookie сессий, чтобы подтвердить, закрыта ли сессия с броузером? Я думал просто установить тайм-аут на сервере, который запускает скрипт, который подсчитывает, сколько файлов cookie присутствует, но как проверить, является ли cookie сеанса кем-то, кто зарегистрирован, а не только посетителем?
Как вы справились с этим?
1) Я не хочу полагаться на сценарий, запущенный с кнопкой выхода, поскольку никто никогда не выходит из системы … люди просто закрывают браузер.
2) О отметках времени и регистрации? Поскольку в моей игре пользователи взаимодействуют с svg (не перемещаясь по страницам), они генерируют огромное количество кликов. Выполнение запроса для каждого щелчка для каждого из них, освежающего запись, будет очень дорогостоящим.
Когда пользователь взаимодействует с сайтом, установите последнее время активности.
Если он длится более 30 минут или около того, вы можете предположить, что они отключены.
Вы также можете указать, что кто-то отключен, когда он выйдет из системы .
Однако ваш случай немного отличается. Вы можете использовать сценарий стиля биения .
Пока они находятся на странице, используйте setInterval()
чтобы продлить срок действия, до максимального диапазона (в случае, если пользователь покидает окно своего браузера в течение нескольких часов подряд).
Поскольку ваш код запускается при загрузке страницы, вы не можете сделать чек, если пользователь закрыл свой браузер или нет.
Таким образом, общий подход будет заключаться в использовании временных меток и обновлении этой отметки, если пользователь что-то делает на вашем сайте, и если временная метка старше 5 минут, вы просто считаете, что он в автономном режиме