Создание API на Symfony 5: Обработка исключений

preview_player
Показать описание
В этом видео посмотрим как очень гибко и расширяемо обрабатывать исключения. Расскажу почему не стоит использовать HttpExceptionInterface или создавать базовый класс ApiException.

Тесты будут в следующем ролике чтобы не затягивать этот.

Рекомендации по теме
Комментарии
Автор

Благодарствую!!! Очень ценный материал для обучающихся!!! Лайки, лайки, лайки... 😊😊😊

data-center-project
Автор

Очень подробно и доходчиво, спасибо. Нравится что сразу с тестами и хорошим подходом, а не голопом по европам

VajasanaDas
Автор

Весьма спорный момент такое использование exception, в качестве способа формирования ответа, в виде неявного перехода. С одной стороны, можно притянуть, что http 4xx - это коды "ошибок", и такое использование exception оправдано. Но, отсутствие ресурса, на самом деле не является какой-либо программной ошибкой (и даже некорректных значений тут нет). Этот ответ относится к данным, а не к коду. А exception изначально относятся к ошибкам кода, ну либо к проверке корректности входящих данных. И задумывался именно для этого, а не к обработке всего и вся. Не первый раз вижу, когда его использование превращает код в некий event-driven. Думаю, что сервису разумно было бы отвечать самому, а не выкидывать exception в таких случаях, и надо четко разделить исключения/ошибки и логику. Отсутствие объекта по идентификатору - это все же логика.

matveyru
Автор

Спасибо за такой подробный разбор, смотрю все видео с удовольствием!
Единственный вопрос возник, целесообразно ли в ExceptionMappingResolver добавлять метод addMapping? Ведь в конструкторе класса ExceptionMapping также идёт проверка типов.

pavel_kz
Автор

благодарю! будут ли уроки касаемо логирования? интеграция с elastic?

darknet
Автор

31:42 Откуда взялась переменная $statusTexts ?

LeoMrakobes
Автор

Добрый день. Спасибо за серию роликов, у вас очень круто получается!

Возник вопрос, как правильно реализовать обработку исключений в ситуации, когда: исключения, возникающие при выполнении API запросов, нужно обрабатывать и возвращать в формате Json, а исключения возникающие с WEB частью приложения (например обращение к несуществующей странице) нужно отдавать пользователям WEB интерфейса в формате HTML?

vladimirmarchenko
Автор

Доброго времени суток, спасибо за ролики, очень качественный материал и подача.
Подскажите как сделать обработку ошибок не в контексте api, а например если код выполняется в cli ? В начале ролика было сказано об этом, но я не очень понял как можно это сделать.

VajasanaDas
Автор

зачем так усложнять)? я нечего не понял. зато показательно для проекта в резюме

romanbush
Автор

Немного не понятно, для чего Вы изобретает велосипед, вместо использования ErrorHandler Component?

qknomvv
Автор

Кто нибудь знает аналог команды curl на windows?

boriskrasnov
Автор

Код выглядит как цветные полосочки, и куча свободного места, не у всех 4к мониторы и хорошее зрение, минус.

TheEmberEve