Как правильно составить и ответить на длинные опрос?

124
19 февраля 2018, 03:46

Здравствуйте! Пытаюсь сделать длинный опрос. То есть я хочу сделать так, что бы клиент не посылал очередной запрос до того, как не прешел ответ с сервера. В моем случае ответы должны приходить раз в минуту. Вот так выглядит код php:

<?php
$date = new DateTime();
$minutes = $date->format("i");
if($minutes%2 == 0){
  print "Сервер отправил запрос";
}
?>

Вот js:

  function subscribe(url) {
     var xhr = new XMLHttpRequest();
     xhr.onreadystatechange = function() {
    if (this.readyState != 4) return;
    if (this.status == 200) {
      console.log(this.responseText);
    } else {
       console.log(this);
    }
    subscribe(url);
  }
  xhr.open("GET", url, true);
  xhr.send();
}
subscribe("http://comet/php.php")

В итоге несколько раз в секунду в консоль выстреливается несколько десяток сообщений, аналогичных этому:

XHR finished loading: GET "http://comet/php.php"

Судя по всему у меня сервер все время шлет ответы. Но как мне сделать так, что бы сервер отправлял ответы только если количество текущих минут делится на 2 без остатка? Как сделать все правильно? Или проблема в js? Заранее спасибо!

READ ALSO
DLE исполнение кода в новости

DLE исполнение кода в новости

Суть в общем в чем!? , имеется сайт для новичков хочу сделать раздел примеры кода движок DLE, хотелось бы сделать каким то образом исполнение...

139
Переход PHP 7 - 5 v

Переход PHP 7 - 5 v

Помогите , на старом хосте была версия пхп на сколько я помню 70

104
SQLSTATE[42S02]: Base table or view not found:

SQLSTATE[42S02]: Base table or view not found:

Добрый вечер, долго искал решение и до сих пор не нашел

128
Не подгружается скрипт в Ajax форме

Не подгружается скрипт в Ajax форме

Итак, попытаюсь объяснить суть проблемы :) Вот сайт https://filmotekacom

132