Разделите входную схему, бизнес-валидацию и публичную модель ответа.
Зачем
Зачем это нужно
Проверьте отсутствующее поле, null, неверный тип и границы диапазона.
Уточните, какие операции блокируют обработчик и что требует отдельного воркера.
Вопросы
Частые вопросы
Как задать маленький контракт эндпоинта?
«Учебный POST /reservations принимает seats=2 и возвращает id и seats. Значения 0 и 9 запрещены; owner_id определяется сервером и не попадает в ответ. Используем FastAPI и Pydantic 2». Попросите пример успешного запроса и таблицу ошибок. Отдельно решите, принимать ли строку «2»: автоматическое преобразование типа не должно случайно определять бизнес-контракт вместо вас.
Что передать для разбора 422?
Схему, тело запроса, Content-Type и обезличенное тело ответа с путём до ошибочного поля. Иногда проблема в расположении данных: параметр ожидается в query, а клиент отправляет JSON. Попросите сопоставить каждое замечание валидатора с исходным значением. Не меняйте все поля на необязательные только ради исчезновения ошибки — сначала уточните, какие из них действительно обязательны.
Можно ли тяжёлую работу просто отправить в BackgroundTasks?
Такой механизм не равен отдельной устойчивой очереди с независимым воркером. Для короткой дополнительной операции он может подходить, а длительный расчёт требует обсуждения перезапуска процесса, статуса и повторов. Попросите описать, что произойдёт при завершении приложения после ответа. Выбор механизма должен соответствовать требованию сохранности задачи, а не только желанию быстро вернуть HTTP-ответ клиенту.
Как проверить асинхронность обработчика?
Проверьте, какие клиенты и драйверы реально используются внутри async-функции. Синхронный сетевой вызов или тяжёлый расчёт может задерживать другие запросы. Модель предложит варианты разделения, но ускорение подтверждается вашим тестом нескольких одновременных обращений. Укажите версии библиотек и настройки запуска; чат не измеряет пропускную способность приложения и не выполняет предложенный эндпоинт автоматически.
Рядом
Соседние страницы каталога
Дальше — весь каталог задач: поиск по названию, темы и фильтры.