Встречается на собеседованиях • сегодня

Как отменить любой запрос к серверу в JavaScript

Для отмены запросов можно использовать AbortController. Он позволяет прервать HTTP-запросы, такие как fetch, axios и другие.

Пример с fetch:

javascript
const controller = new AbortController();
const signal = controller.signal;

fetch('https://api.example.com/data', { signal })
  .then(response => response.json())
  .catch(err => {
    if (err.name === 'AbortError') {
      console.log('Запрос отменён');
    }
  });

// Отмена запроса
controller.abort();

text

Для `axios`:
```javascript
const source = axios.CancelToken.source();

axios.get('https://api.example.com/data', {
  cancelToken: source.token
}).catch(err => {
  if (axios.isCancel(err)) {
    console.log('Запрос отменён');
  }
});

// Отмена запроса
source.cancel();

Ключевые моменты:

  • Работает только с современными API (не поддерживается в IE)
  • После отмены запроса срабатывает ошибка AbortError (fetch) или Cancel (axios)
  • Можно использовать один AbortController для нескольких запросов
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы