Как стать автором
Обновить
0
0

Пользователь

Отправить сообщение
Пожалуй, соглашусь с Вашим вариантом, отвечать другим кодом, отличным от 404 при ошибочном id или отсутствия доступа. Холиварить тут нет смысла :)
Полагаю, что в Вашем вопросе есть ошибка :)

GET /order — не корректный запрос/uri
GET /orders — получить коллекцию заказов. Если в рамках существующих фильтров ничего не найдено, вернуть пустую коллекцию с кодом 200 (запрос же корректно был обработан). Как альтернатива, можно вернуть код 400, но как по мне — это уже дело вкуса…
GET /order/{id} — вернет 200, если заказ (ресурс) с таким id существует. 404, если заказ не найден, не корректный id или клиенту нельзя знать о существовании такого id

Дизайн rest api предполагает, что код ответа (http статус) уже несет в себе нужную информацию. Вы можете дополнить тело ответа информацией про ошибку, при условии отладки. Автор статьи игнорирует рекомендации по дизайну и всегда отдает сообщение из исключения, в обход ExceptionHandler'а
1. Зачем вызывать явно «response()->json»? Фреймворк сам разберется, в каком формате сериализовать данные.

2. А вот пример в Вашем коде, как не нужно делать:
return response()->json([
                'success' => false,
                'exception' => $e->getMessage()
            ]);

Лучше отвечать кодом HTTP. Так же, фреймворк предоставляет для этого все нужное, используя настройки окружения (debug флаг) для более развернутой информации про ошибку

3. try-catch конструкция внутри контроллера — лишнее. Есть ExceptionHandler из коробки

4. Вот в этом месте
$orderService->createOrderFromRequest($request)

Вы рискуете получить лишние данные прямо в сервисный слой. Используйте метод "$requests->validated()"
Жаль, что релиз ES4 так и не состоялся. Много классных плюшек. Интересно, как бы развивался современный веб?
только это не решает проблему восстановления пароля через генерацию в ручную
Скоро будут статьи «как включить телефон одной кнопкой»…
AppInitializer и Bootstrap Listener — полезная штука, особенно в связке с ngrx
Отличный набор нововведений. Порадовал «Оператор распаковки в массивах»
Начина читать статью, сложилось впечатление, что ее цель — рассказать, сколько млн. строк кода на PHP в вашем продукте…
кто первый встал, того и тапки
Это прямо знак… Вторую неделю борюсь с желанием сделать себе подарок на новый год в виде бесполезного робота vector. Вроде как отлегло, и вот опять…
посмотрел на свои bt наушники с мыслью «не такие уже они и плохие...»
Мне кажется, много «но» в таком способе атаки… Подпись пакета, не опытность пользователя, сомнительный источник пакета…
возможно, я придираюсь, но:
— стиль кода оставляет желать лучшего
— было бы здорово увидеть живое демо
— es5…

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность