Вступить в клуб →
средняявопросREST API на NestJS и Express

Переименование поля в ответе сломало мобильные приложения

В ответе GET /orders/{id} поле sum переименовали в totalAmount — так честнее по смыслу. Веб-фронтенд обновили в том же релизе, но в мобильных приложениях у части пользователей осталась старая версия, и у них в карточке заказа теперь пусто.

Как стоило выкатывать такое изменение?

  • Выпускать новую мажорную версию API на любое изменение ответа и держать её параллельно со старой, пока клиенты не переедут
  • Обновить описание в Swagger одновременно с релизом: клиенты подтянут актуальный контракт и перестроятся на новое имя поля
  • Сначала отдавать оба поля, пометить `sum` устаревшим и удалить его, когда старые клиенты перестанут приходить
  • Выпустить срочное обновление мобильных приложений — это единственный способ, любое изменение формата ответа ломающее

🔒 Проверка ответа — для участников клуба

  • Проверка ответа
  • Подсказка, если застряли
  • Разбор с объяснением, почему так
  • Прогресс по всем задачам и виртуальные собеседования
Зарегистрироваться →

Регистрация занимает минуту

Другие задачи раздела