Смотрю уроки по laravel rest api. В контроллере в методах index и show возвращают просто модели, а в методах store, update, delete - response()->json(данные, код состояния). Почему?
Почему в индексе не используют response()->json($data, 200)? Если так писать, это будет ошибкой? Или это просто уроки про "мини-приложение на коленке" и в нормальных проектах возвращают уже response()->json($data, 200)? Мне кажется более безопасным на фронте сначала проверить ответ на код 200, а потом уже читать данные. Или это излишне?
И зачем это нужно в других методах?
Ну начнем стого что promis если что сами выкинут ошибку все что 2** продут как ок ,302 редирект а 400 у тебя выкинут ошибку проверять нету смысла плюс у тебя есть сервисы контролирующие состояние запроса и выкидывающие ошибки
Если в видео в индексе возвращают LaravelResource то код ответа идет в комплектации. Его нуждно юзать, когда нужно вернуть ресурсы на фронт в том виде в котором они там нужны. Если ресурсы не нужны (например после store) то достаточно Json Response, как в твоем примере.
На мой взгляд причина весьма простая, методы store update deleted они сперва кое что получают и только выполняют свою миссию, а если речь именно о 200 ок, то когда я через аксиос передаю что-нибудь в бекенд например в store или делет, он сперва проверяет есть ли такой путь уж потом делает своё дело. Если что то не так описал можете поправить