Может ли кто-нибудь показать мне, как отправлять уведомления клиенту без постоянного подключения к PHP - PullRequest
0 голосов
/ 09 декабря 2011

В моем приложении я хочу отправить несколько предупреждений клиенту. Я хочу отправить обновления клиенту без запроса, аналогичного push-серверу.

Может ли какой-нибудь орган предложить мне способ сделать это ...?

Спасибо заранее Raviraja

1 Ответ

1 голос
/ 09 декабря 2011

Лучший способ обработки уведомлений без постоянного соединения - это использовать то, что люди называют также функцией сердцебиения.

Функция сердцебиения - это функция / метод, который вызывается с определенным интервалом, как ваше сердцебьется в постоянном ритме.

   setInterval(function () {
      $.get("/heartbeat.php", null, function (response) {
          // check the response from heartbeat.php for new notifications
      });
   }, 10000);

Примечание : В приведенном выше примере содержится код jQuery $.get( ... ), не-jQuery способ будет сделать вызов ajax с использованием XMLHttpRequest.

Выше будет вызывать скрипт php каждые 10 секунд для проверки новых уведомлений.Новые уведомления могут быть добавлены, например, с помощью таблицы внутри базы данных.Например, имея таблицу уведомлений и 3 поля (4, если вы хотите дату): поле идентификатора пользователя, поле сообщения и поле флага «прочитано» / «отправлено».

Новые уведомления будут добавлены втаблица, и когда вызывается скрипт heatbeat, он проверяет идентификатор пользователя и помечает поля для новых сообщений;если они найдены, ответьте сообщением и отметьте их как отправленные.

...