Выбор ответа Junior Web API и воркеры спрашивают часто обновлено
fetch и ответ 404
Вопрос
Сервер вернул 404. Что выведет код?
try {
const res = await fetch('/missing');
console.log('ok', res.status);
} catch (e) {
console.log('catch');
}
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: ok 404. Промис fetch отклоняется только при сетевой ошибке или отмене.
Варианты ответа
catchok 404правильный ответ- Ничего: промис так и останется в ожидании
ok undefined
Разбор
Промис fetch отклоняется только при сетевой ошибке или отмене. HTTP-ответ с любым статусом, включая 404 и 500, считается успешным, просто res.ok равно false. Поэтому выводится ok 404. Статус всегда число. Промис не зависает: ответ получен.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.