Используя Laravel 5.4, я хотел бы отправить ответ json, хотя в api.php не найден маршрут, как я могу архивировать с помощью api.php и без класса Controller и Model.
короткая: Как обрабатывать, когда название маршрута неверно?
Пробовал с fallback
:
Route::fallback(function(){
return response()->json(['message' => 'Not Found!'], 404);
});
Ошибка для выше:
Attribute [fallback] does not exist.
Помогите, пожалуйста, как обработать исключение Route not found при неправильном запросе имени маршрута.
отступление доступно с версии 5.6. попробуй Route :: any ()
@NobbyNobbs — trim () ожидает, что параметр 1 будет строкой, объект задан
добавьте в конце вашего api.php (ниже всех других маршрутов) что-то вроде
Route::any('{path}', function() {
return response()->json([
'message' => 'Route not found'
], 404);
})->where('path', '.*');
Как я могу архивировать с в api.php и без класса контроллера и модели
На мой взгляд, использование анонимной функции в качестве обработчика маршрута — не лучшая идея, потому что вы не можете кэшировать свои маршруты, если используете замыкания, и это вызывает некоторые накладные расходы.
Других решений пока нет …