当前位置:Gxlcms > PHP教程 > Laravel5.x如何让404返回一个json?

Laravel5.x如何让404返回一个json?

时间:2021-07-01 10:21:17 帮助过:4人阅读

比如正常的一个请求,返回方式如下:

return response($result, $code);  // 返回json

异常的请求,比如该路由没有被定义,该请求的方法没有被定义。如何也返回一个json对象呢,写在404.blade.php里肯定不合适,因为写进去的话会返回一个string

回复内容:

比如正常的一个请求,返回方式如下:

return response($result, $code);  // 返回json

异常的请求,比如该路由没有被定义,该请求的方法没有被定义。如何也返回一个json对象呢,写在404.blade.php里肯定不合适,因为写进去的话会返回一个string

Middleware或者App\Exceptions\Handler里捕获
Symfony\Component\HttpKernel\Exception\NotFoundHttpException

如果是Middleware

use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;

public function handle($request, Closure $next) {
    try {
        return $next($request);
    } catch (NotFoundHttpException $e) {
        return response()->json(['msg'=>'NotFound']);
    }
}

人气教程排行