Sobes.tech
Назад к вопросам
Middle+
5

Как можно отменить HTTP-запрос?

Компании, где спрашивали
НСПК

Ответ от нейросети

sobes.tech AI

Отмена HTTP-запроса зависит от используемых API, но в современных браузерах и фронтенд-фреймворках чаще всего применяют следующие подходы:

  • AbortController (Fetch API): Создаётся объект AbortController, и его сигнал передаётся в опции fetch. Позже можно вызвать abort() для отмены запроса.
const controller = new AbortController();
fetch('https://example.com/data', { signal: controller.signal })
  .then(response => response.json())
  .catch(err => {
    if (err.name === 'AbortError') {
      console.log('Запрос отменён');
    } else {
      console.error('Ошибка:', err);
    }
  });

// Отмена запроса
controller.abort();
  • XMLHttpRequest: Можно вызвать метод xhr.abort() для отмены запроса.

  • Библиотеки (например, Axios): Предоставляют собственные методы отмены, часто основанные на AbortController или собственных токенах отмены.

Таким образом, для отмены запроса нужно иметь ссылку на контроллер или объект запроса и вызвать соответствующий метод отмены.