← Все сеты

Async и сеть: fetch, ошибки, retry

Практический сет задач по Promise, async/await и обработке ошибок при работе с API.

Уровень: JuniorОценка времени: 110 мин

Цели сета

  • Уверенно работать с async/await и Promise.all
  • Обрабатывать ошибки и таймауты запросов
  • Понимать сетевую часть frontend-приложения

Что ты сделаешь в сете

  • Реализовать fetch-запрос с AbortController и таймаутом 5 секунд.
  • Добавить retry с экспоненциальной задержкой для flaky API.
  • Сделать единый обработчик network, 4xx и 5xx ошибок.
  • Собрать страницу с loading/error/empty/success состояниями.

Рекомендуемые уроки

Что должно получиться на выходе

  • API-модуль с утилитами timeout/retry/error-normalize.
  • UI-страница с демонстрацией всех сетевых состояний.
  • Документация по стратегии обработки ошибок.

Критерии готовности

  • Нет необработанных Promise rejection.
  • Пользователь всегда видит понятное состояние интерфейса.
  • Код сетевого слоя можно переиспользовать в других страницах.

Частые ошибки

  • Глотать ошибки в catch без возврата информации в UI.
  • Жёстко связывать UI-компонент с fetch-логикой.
  • Не отменять устаревшие запросы при повторных действиях пользователя.

Что положить в портфолио

Покажи кейс, где ты построил стабильный сетевой слой с retry, timeout и предсказуемыми UI-состояниями.

FAQ по этому сету

Сколько времени закладывать на сет «Async и сеть: fetch, ошибки, retry»?

Ориентир: 110 минут. Лучше разделить прохождение на 2-3 подхода с обязательным разбором ошибок.

Как понять, что сет пройден качественно?

Оцени себя по критериям готовности: код стабилен, edge-cases закрыты, решения читаемы и объяснимы на собеседовании.

Что добавить в портфолио после выполнения сета?

Покажи кейс, где ты построил стабильный сетевой слой с retry, timeout и предсказуемыми UI-состояниями.

© 2026 Road to JS · ИП Добрынина Екатерина Владимировна

ИНН 482425719598 · ОГРНИП 326480000011329 · qamos@bk.ru