Под «Обработкой ошибок выборки» подразумеваются методы и подходы, используемые для обработки ошибок и исключений при выполнении HTTP-запросов с использованием API Fetch. Вот несколько методов, обычно используемых для обработки ошибок выборки:
- Использование обещаний. Fetch API возвращает обещание, которое позволяет обрабатывать успехи и неудачи с помощью методов
.then()
и.catch()
. Вы можете перехватывать и обрабатывать ошибки в блоке.catch()
.
Пример:
fetch('https://api.example.com/data')
.then(response => {
if (!response.ok) {
throw new Error('Network response was not OK');
}
// Process the response
})
.catch(error => {
// Handle the error
});
- Проверка статуса ответа. Вы можете проверить код статуса ответа, чтобы определить, был ли запрос успешным или возникла ошибка. Коды состояния в диапазоне 200–299 указывают на успех, а другие — на ошибки.
Пример:
fetch('https://api.example.com/data')
.then(response => {
if (response.status >= 200 && response.status < 300) {
// Process the response
} else {
throw new Error('Request failed with status ' + response.status);
}
})
.catch(error => {
// Handle the error
});
- Обработка сетевых ошибок. Ошибки, связанные с сетью, такие как сбой соединения или тайм-аут, можно обрабатывать с помощью
catch
или путем проверки свойстваok
ответа.
Пример:
fetch('https://api.example.com/data')
.then(response => {
if (!response.ok) {
throw new Error('Network response was not OK');
}
// Process the response
})
.catch(error => {
// Handle network errors
});
- Анализ данных ответа. Иногда в данные ответа могут быть встроены ошибки, например JSON. Такие ошибки можно обрабатывать, анализируя ответ и проверяя наличие конкретных условий ошибки.
Пример:
fetch('https://api.example.com/data')
.then(response => response.json())
.then(data => {
if (data.error) {
throw new Error('Server returned an error: ' + data.error);
}
// Process the response data
})
.catch(error => {
// Handle the error
});