Задать вопрос
@LioneNET

Как запрашивать данные с сайта с определенной периодичностью?

Как работает механизм запроса данных с web сервера. Т.е например как в почтовых приложениях, когда на электронный адрес приходит сообщение, в программе оно тоже отображается.

В общем как правильно мониторить данные на веб сервере?
  • Вопрос задан
  • 2741 просмотр
Подписаться 2 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Android-разработчик
    12 месяцев
    Далее
  • Яндекс Практикум
    Мидл Android‑разработчик
    5 месяцев
    Далее
  • Академия Codeby
    Курс «Анализ защищенности приложений Андроид»
    14 недель
    Далее
Решения вопроса 1
GavriKos
@GavriKos
Микропетпроджект - домашнее облако homeCloud
Варианты:
1) В отдельном потоке каждые n секунд отправляете запрос (GET/POST) на сервер и смотрите что он ответил вам
2) Открываете сокетное соединение с сервером и ждете когда он сам вам что то пришлет.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
AlekseyNemiro
@AlekseyNemiro
full-stack developer
Слишком общий вопрос.

Программы-клиенты просто выполняют проверку с заданной частотой (по таймеру). Например, почтовая программа может каждые десять минут делать запросы к почтовому серверу и если есть новые письма, загружать их.

На сайтах, при использовании AJAX это работает аналогично. Загруженная в браузер страница периодически делает запросы к серверу (в подавляющем большинстве).

function Checker()
{
  $.get("http://localhost/естьчо", // проверка наличия данных на сервере
  function(result)
  {
     alert("что-то есть");
     window.setTimeout(Checker, 5000); // вызов функции Checker через 5 сек.
  });
}

window.setTimeout(Checker, 5000); // вызов функции Checker через 5 сек.


Возможен вариант, когда сервер сообщает клиентам о поступлении новых данных, но это чуть-чуть сложнее реализовать.
Ответ написан
Комментировать
@asd111
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы