Перейти к основному содержимому

Работа с API

Слой API отвечает исключительно за HTTP-запросы и транспорт. Он не управляет состоянием и не знает о UI. Управление жизненным циклом данных, полученных с сервера, описано в разделе "Управление Server State".

Цели

  • Изоляция сетевой логики в выделенном слое shared/api.
  • Обеспечение единого HTTP-клиента с централизованной конфигурацией.
  • Строгая типизация всех запросов и ответов (DTO).
  • Поддержка отмены запросов и корректная обработка ошибок.

Общие принципы

MUST

  1. Единый HTTP-клиент — использование общего инстанса (xior, wretch, ky) с настроенными интерсепторами.
  2. Изоляция — сетевая логика находится только в src/shared/api. UI не делает запросы напрямую.
  3. Типизация — все запросы строго типизированы через DTO. Использование any запрещено.
  4. Обработка ошибок — приведение ошибок к единому формату (ApiError).

SHOULD

  • Тонкие доменные сервисы (usersApi, ordersApi) без бизнес-логики.
  • Проброс AbortSignal во все методы API для поддержки отмены запросов.

Разделы документации