让Laravel5.5框架以POST方式提交时,没有设置crsf_token值的报错机制更优雅一些
在前一段时间中,为学生上课时在课堂中是以Laravel5.4为例;但是,有不少学生在使用composer安装Laravel时没有指定版本号,所以导致下载最新版本的Laravel框架,在学习框架过程当中,遇到form表单以post方式提交数据时,忘记在表单中使用{!! csrf_field() !!}设置token,就会报以下图所示的错误:
怎么样才能让以上报错方式更优雅一些呢? 答:为Laravel5.5框架安装filp/whoops插件即可。
1、安装filp/whoops插件使用:composer require filp/whoops 如下图所示: 2、修改配置文件修改项目中的/app/Exceptions/Handler.php文件
修改render( )方法,代码如下图所示: if ($this->isHttpException($exception)) { return $this->renderHttpException($exception); } if (config('app.debug')) { return $this->renderExceptionWithWhoops($exception); } return parent::render($request,$exception);
在render( )方法后面添加renderExceptionWithWhoops()方法,代码如下图所示: /** *Render an exception using Whoops. * *@param \Exception $e *@return \Illuminate\Http\Response */ protected functionrenderExceptionWithWhoops(Exception $e) { return new\Illuminate\Http\Response( $whoops->handleException($e), $e->getStatusCode(), $e->getHeaders() ); } 3、测试代码如下图所示: 报错机制效果如下图所示:
|