Как отменить HTTP-запрос к бэкенду?

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

Короткий ответ

Что ответить на собеседовании

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

Подробный разбор

Ответ с пояснениями

Отмена 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 или собственных токенах отмены.

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

Практика в реальном времени

Подготовьтесь к следующему собеседованию

Interview Boost учитывает вакансию, резюме и технологии и помогает сформулировать ответ прямо во время интервью.

Начать подготовку