Fetch API — это современная замена XMLHttpRequest, используется для выполнения HTTP-запросов в JavaScript. Она возвращает Promise, который разрешается объектом Response, позволяя писать более чистый асинхронный код.
async/awaitconst response = await fetch('https://api.example.com/data');
const data = await response.json();
Объект Response предоставляет несколько методов для парсинга тела ответа:
response.json() — парсит JSONresponse.text() — возвращает обычный текстresponse.blob() — возвращает бинарные данныеЭто распространённая ошибка — fetch() отклоняет Promise только при сетевых сбоях (например, нет интернета). Он не бросает исключение для HTTP-кодов ошибок вроде 404 или 500.
Нужно вручную проверить response.ok или response.status:
const response = await fetch('/api/data');
if (!response.ok) {
throw new Error(`HTTP error: ${response.status}`);
}
const data = await response.json();
response.ok перед тем, как обрабатывать тело ответаtry/catch для обработки настоящих сетевых сбоевfetch() не отправляет куки — используй credentials: 'include', если это нужноFetch API автоматически отклоняет Promise при получении кодов ошибок HTTP, таких как 404 или 500, требуя только простого блока catch для обработки всех сценариев ошибок.
Новый — ещё не проверен сообществом
Вы