Javascript периодический запрос HTML POST запрашивает аутентификацию - PullRequest
0 голосов
/ 17 сентября 2018

Я реализовал простую страницу PHP, которая показывает данные в реальном времени со встроенного устройства. Javascript периодически отправляет POST-запрос сценарию CGI на сервере, и сервер отвечает запрошенными данными.

Проблема в том, что я использую аутентификацию пользователя / пароля Apache на веб-сервере (включая каталог cgi-bin по соображениям безопасности). Когда я загружаю страницу, браузер запрашивает пользователя / пароль, и это нормально. Проблема в том, что когда логин истекает, но JavaScript продолжает отправлять POST-запросы. Он запрашивает у меня user / pass при каждом запросе, но, поскольку запросы разнесены на 500 мсек, у меня нет времени для их полного заполнения. Это заставляет выйти из браузера на рабочем столе и приводит к сбою браузера на мобильном телефоне.

Можно ли разрешить javascript отправлять запросы только после действительной аутентификации? Или просто прекратить отправлять их, пока пользователь не войдет в систему?

Вот некоторые выдержки из кода.

setInterval(refreshTelemetry, 500);

function refreshTelemetry()
{
    getTelemetry();
}


function getTelemetry()
{
    xmlrequest.open('POST', "cgi-bin/telemetry.php", true);
    xmlrequest.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
    telemxhr.send("action=gettelemetry");
}

Спасибо всем заранее!

...