Есть ли лучший способ определить статус пользователя в сети, а не отправлять запросы AJAX на сервер с помощью setInterval? - PullRequest
0 голосов
/ 30 апреля 2020

Есть ли какой-нибудь хороший способ определить, находится ли пользователь в сети или нет?

У меня нет никаких других идей, но я все еще использую неэффективный способ решения этой проблемы: я продолжаю отправлять AJAX запросов в сервер с регулярными интервалами с помощью setInterval, а затем сервер определяет, находится ли пользователь в сети или нет, в соответствии с отметкой времени запроса.

Я знаю, что это не очень хороший способ. И, конечно же, он потратил много пропускной способности Inte rnet и увеличил нагрузку на сервер. Но это также самый простой способ реализовать функцию.

Так есть кто-нибудь, у кого есть идея получше?

1 Ответ

0 голосов
/ 01 мая 2020

У меня была та же проблема.

2 возможных решения (не используйте оба)

•• 1 •• jquery IDLE: https://github.com/kidh0/jquery.idle

•• 2 •• a document.addEventListener (document.addEventListener)

вот так

document.addEventListener("visibilitychange", function() { 
    wistatus = document.visibilityState; 
    if ( wistatus == "visible" ) { /* AJAX STUFF user in HERE */ }  
    else { /* AJAX STUFF use out HERE */ }
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...