Php 如果找不到路由,如何将404作为json响应处理?

Php 如果找不到路由,如何将404作为json响应处理?,php,laravel-5,laravel-5.4,laravel-routing,laravel-response,Php,Laravel 5,Laravel 5.4,Laravel Routing,Laravel Response,使用Laravel5.4,我想发送json响应,虽然在api.php中找不到路由,但如何在api.php中使用而不使用控制器和模型类进行归档 short:当路由名称不正确时如何处理 尝试使用回退: Route::fallback(function(){ return response()->json(['message' => 'Not Found!'], 404); }); 上述错误: Attribute [fallback] does not exist. 请帮助我,

使用Laravel5.4,我想发送json响应,虽然在api.php中找不到路由,但如何在api.php中使用而不使用控制器和模型类进行归档

short:当路由名称不正确时如何处理

尝试使用
回退

Route::fallback(function(){
    return response()->json(['message' => 'Not Found!'], 404);
});
上述错误:

Attribute [fallback] does not exist.
请帮助我,当错误的路由名称请求时,如何处理路由未找到异常


从5.6版开始提供回退功能。尝试路由::any()


@nobbynobs-trim()要求参数1为字符串,对象为给定的

在api.php的末尾(在所有其他路由下面)添加如下内容

Route::any('{path}', function() {
    return response()->json([
        'message' => 'Route not found'
    ], 404);
})->where('path', '.*');
如何在api.php中使用而不使用控制器和模型类进行归档


在我看来,使用匿名函数作为路由处理程序并不是一个好主意,因为如果使用闭包,则无法缓存路由,这会导致一些开销。

从5.5版开始提供回退功能。尝试Route::any()@nobbynobs-
trim()期望参数1为字符串,给定对象
查看此PR提交是否有帮助。