Возвращайте явное доменное состояние и доступные действия, а различия web и mobile оформляйте согласованной моделью представления. Клиент не должен угадывать сценарий по случайному набору полей.
В каком виде GET-метод должен вернуть информацию, чтобы фронтенд корректно определил текущий пользовательский кейс, учитывая, что web и mobile используют разные наборы кейсов на основе одних доменных сущностей?
Возвращайте явное доменное состояние и доступные действия, а различия web и mobile оформляйте согласованной моделью представления. Клиент не должен угадывать сценарий по случайному набору полей.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Возвращайте явное доменное состояние и доступные действия, а различия web и mobile оформляйте согласованной моделью представления. Клиент не должен угадывать сценарий по случайному набору полей.
Например, ответ может содержать status, allowed_actions, необходимые данные и версию представления. Для сильно различающихся интерфейсов возможен отдельный BFF или профиль ответа, но бизнес-правила остаются общими. Перечислите допустимые состояния, переходы и поведение клиента при неизвестном значении. Не доверяйте разрешениям, ранее показанным в GET: backend повторно проверяет их при выполнении действия. Точную схему выбирают после перечисления пользовательских кейсов.