Описывает state и extractors так, чтобы несовместимость ловил компилятор
Зачем
Зачем это нужно
Приводит ошибки домена и базы к одному безопасному HTTP-ответу
Завершает приём новых соединений и даёт текущим запросам закончиться
Вопросы
Частые вопросы
Почему handler не реализует Handler?
Обычно один аргумент extractor не удовлетворяет Send, порядок извлечения тела неверен или тип ответа не сводится к IntoResponse. Полная ошибка компилятора содержит нужную границу. Модель развернёт цепочку типов и предложит точечную правку, а не добавит случайные clone ко всему state.
Как хранить пул базы в state?
Пул уже рассчитан на совместное использование и обычно клонируется как лёгкая ссылка внутри общего состояния. Соединение берут на время запроса и обязательно возвращают до внешних долгих вызовов. Модель настроит лимит и таймаут, учитывая число экземпляров сервиса, а не только один процесс.
Нужен ли отдельный тип ошибки?
Да, если несколько слоёв должны превращаться в стабильный публичный контракт. Внутренняя причина остаётся для лога, клиент получает код и безопасное сообщение. Модель сохранит source для диагностики и не будет возвращать текст ошибки SQL или путь файла через автоматический Display.
Рядом
Соседние страницы каталога
Дальше — весь каталог задач: поиск по названию, темы и фильтры.