Mar*_*lln 59 laravel laravel-5
在Laravel 5,App::missing并且App::error是不可用的,那么怎么做你捕捉异常和缺页呢?
我在文档中找不到任何相关信息.
Mar*_*lln 94
在Laravel 5中,您可以通过编辑render方法来捕获异常app/Exceptions/Handler.php.
如果要捕获丢失的页面(也称为NotFoundException),则需要检查异常$e是否是实例Symfony\Component\HttpKernel\Exception\NotFoundHttpException.
public function render($request, Exception $e) {
if ($e instanceof \Symfony\Component\HttpKernel\Exception\NotFoundHttpException)
return response(view('error.404'), 404);
return parent::render($request, $e);
}
Run Code Online (Sandbox Code Playgroud)
使用上面的代码,我们检查是否$e是一个instanceof,Symfony\Component\HttpKernel\Exception\NotFoundHttpException如果是,我们使用HTTP状态代码404response将视图文件error.404作为内容发送.
这可以用于任何例外.因此,如果您的应用发送异常App\Exceptions\MyOwnException,请检查该实例.
public function render($request, Exception $e) {
if ($e instanceof \App\Exceptions\MyOwnException)
return ''; // Do something if this exception is thrown here.
if ($e instanceof \Symfony\Component\HttpKernel\Exception\NotFoundHttpException)
return response(view('error.404'), 404);
return parent::render($request, $e);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
40884 次 |
| 最近记录: |