laravel框架 api自定义全局异常处理方法
api返回实现
$result=User::find($id); if(empty($result)){ thrownewApiException('获取失败'); } else{ returnjson_decode($result); }
api返回信息
{ "msg":"", "data":"获取失败", "status":0 }
1,添加异常类
namespaceApp\Exceptions; classApiExceptionextends\Exception { function_construct($msg='') { parent::_construct($msg); } }
2,修改laravel异常类u。。。
namespaceApp\Exceptions; publicfunctionrender($request,Exception$e) { if($einstanceofApiException){ $result=[ "msg"=>"", "data"=>$e->getMessage(), "status"=>0 ]; returnresponse()->json($result); } returnparent::render($request,$e);
考虑开发配置时
publicfunctionrender($request,Exception$e) { if(config('app.debug')){ returnparent::render($request,$e); } return$this->handle($request,$e); } publicfunctionhandle($request,Exception$e){ if($einstanceofApiException){ $result=[ "msg"=>"", "data"=>$e->getMessage(), "status"=>0 ]; returnresponse()->json($result); } returnparent::render($request,$e); }
以上这篇laravel框架api自定义全局异常处理方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。