Существует ли универсальный метод обработки ошибок при использовании Fetch?

Здравствуйте. Существует ли универсальная функция обработки ошибок для fetch и xhttp request, аналогичная функции в jQuery?
  • 2 января 2024 г. 17:57
Ответы на вопрос 2
Да, существует несколько подходов к обработке ошибок при использовании Fetch API или XMLHttpRequest. Вот несколько способов:

1. Обработка ошибок с помощью метода .catch(): Вы можете использовать метод .catch() после вызова Fetch API или XMLHttpRequest, чтобы перехватить и обработать любые ошибки, возникающие во время запроса. Например:

```javascript
fetch('https://api.example.com/data')
  .then(response => {
    if (!response.ok) {
      throw new Error('Network response was not ok');
    }
    return response.json();
  })
  .catch(error => {
    console.log('Error:', error.message);
  });
```

2. Использование обработчика события "onerror": Для XMLHttpRequest можно установить обработчик события "onerror", чтобы обрабатывать ошибки. Например:

```javascript
const xhr = new XMLHttpRequest();
xhr.open('GET', 'https://api.example.com/data');

xhr.onerror = function() {
  console.log('Error:', xhr.status);
};

xhr.send();
```

3. Использование обработчика события "onreadystatechange": Для XMLHttpRequest можно также использовать обработчик события "onreadystatechange" для обработки ошибок. Например:

```javascript
const xhr = new XMLHttpRequest();
xhr.open('GET', 'https://api.example.com/data');

xhr.onreadystatechange = function() {
  if (xhr.readyState === XMLHttpRequest.DONE) {
    if (xhr.status !== 200) {
      console.log('Error:', xhr.status);
    } else {
      console.log(xhr.responseText);
    }
  }
};

xhr.send();
```

4. Использование библиотек: Вы также можете использовать библиотеки, такие как Axios или jQuery, которые предоставляют удобные методы для работы с запросами и автоматической обработки ошибок.

Выбор метода обработки ошибок зависит от ваших конкретных потребностей и предпочтений разработки.
Посмотрите на wretch
Похожие вопросы