heretic_man
@heretic_man

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

Здесь идет запись в консоль данных заголовка XHR при каждом AJAX запросе от сайта.
var setRequestHeader = XMLHttpRequest.prototype.setRequestHeader;

// Выполняется для каждого заголовка
XMLHttpRequest.prototype.setRequestHeader = function(key, value) {
console.warn(key, value); // ключ значение
    setRequestHeader.call(this, key, value);
}


Как выполнить это чтение только один раз когда была бы отправка AJAX.
Прочитал заголовок, записал в переменную и прекратил слушать оправку.
  • Вопрос задан
  • 124 просмотра
Решения вопроса 1
heretic_man
@heretic_man Автор вопроса
var setRequestHeader = XMLHttpRequest.prototype.setRequestHeader;
var i= true;

XMLHttpRequest.prototype.setRequestHeader = function(key, value) {
    if (i) {
        console.warn(key, value);
        i = false;
    }
    setRequestHeader.call(this, key, value);
}
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
BRAGA96
@BRAGA96
var setRequestHeader = XMLHttpRequest.prototype.setRequestHeader;
var once = true;

XMLHttpRequest.prototype.setRequestHeader = function(key, value) {
    if (once) {
        console.warn(key, value);
        setRequestHeader.call(this, key, value);
        once = false;
    }
}
Ответ написан
RhesusNegative
@RhesusNegative
Negative
заюзай localstorage и записывай туда 1цу , потом проверку если !=1 выполняй иначе...
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы