Показать сообщение отдельно
  #1 (permalink)  
Старый 18.05.2021, 09:10
Новичок на форуме
Отправить личное сообщение для DmitryR Посмотреть профиль Найти все сообщения от DmitryR
 
Регистрация: 18.05.2021
Сообщений: 8

Отправка GET запроса по таймеру
HTTP сервер предоставляет данные по запросу от клиента, предоставляется массив чисел. Запрос генерируется по таймеру каждую секунду. Как можно сделать так, чтобы при большой загруженности сервера время данного запроса увеличивалось, а при меньшей загруженности - уменьшалось?
function Timer2(){
      xhr.open("GET", "content.bin?r=" + Math.random(), true);
      xhr.responseType = "arraybuffer";
      xhr.onload = function (oEvent) {
          var uint16Array = new Uint16Array(this.response);

          myChart.data.datasets[0].data = data16Array;

          myChart.update();             
      }
      xhr.send(null);
      idTimer2 = setTimeout(Timer2, 1000);
    }

Вот у таймера время 1000. Я так понимаю надо завести туда переменную и условие if, которое сможет управлять данной переменной, вопрос в том, что это за условие и как его прописать?
По аналогии с этим
if (ошибка запроса из-за перегрузки сервера) {
    // увеличить интервал для следующего запроса
    delay *= + 500;
  }
Ответить с цитированием