Как прервать axios запрос?

Пользователь

от stanford_mosciski , в категории: JavaScript , 8 месяцев назад

Как прервать axios запрос?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от elian.swift , 7 месяцев назад

@stanford_mosciski 

Чтобы прервать запрос, отправленный с помощью библиотеки Axios в браузере, вы можете использовать функцию cancel() из объекта CancelToken.

  1. Создайте экземпляр CancelToken:
1
const source = axios.CancelToken.source();


  1. Добавьте объект cancelToken в опции запроса:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
axios.get('/api/data', {
  cancelToken: source.token
}).then(response => {
  console.log(response);
}).catch(error => {
  if (axios.isCancel(error)) {
    console.log('Request canceled', error.message);
  } else {
    console.log('Error', error.message);
  }
});


  1. Для отмены запроса вызовите метод cancel() объекта source:
1
source.cancel('Operation canceled by the user.');


При вызове метода cancel() запрос будет отменен, а все промисы, связанные с этим запросом, будут отклонены с ошибкой Cancel. Обработка ошибки в примере выше позволяет определить, был ли запрос отменен пользователем или возникла другая ошибка.