laravel 错误处理,接口错误返回json代码


Posted in PHP onOctober 25, 2019

Laravel 默认已经为我们配置好了错误和异常处理,我们在 App\Exceptions\Handler 类中触发异常并将响应返回给用户。 所有异常都由类App\Exceptions\Handler处理,该类包含两个方法:report和render

report方法只是将异常传递给异常被记录的基类,我们这里主要是针对 render 的修改:

先看代码:

public function render($request, Exception $exception)
{
 if($request->is('api/*')){
  $response = [];
  $error = $this->convertExceptionToResponse($exception);
  $response['status'] = $error->getStatusCode();
  $response['msg'] = 'something error';
  if(config('app.debug')) {
   $response['msg'] = empty($exception->getMessage()) ? 'something error' : $exception->getMessage();
   if($error->getStatusCode() >= 500) {
    if(config('app.debug')) {
     $response['trace'] = $exception->getTraceAsString();
     $response['code'] = $exception->getCode();
    }
   }
  }
  $response['data'] = [];
  return response()->json($response, $error->getStatusCode());
 }else{
  return parent::render($request, $exception);
 }
}

$request->is(‘api/*') 用于判断是否是 接口请求

$response 数组你可以依据你的接口返回格式统一一下。

以上这篇laravel 错误处理,接口错误返回json代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
mysql 全文搜索 技巧
Apr 27 PHP
PHP生成条形图的方法
Dec 10 PHP
PHP删除指定目录中的所有目录及文件的方法
Feb 26 PHP
PHP如何通过AJAX方式实现登录功能
Nov 23 PHP
PHP Cookei记录用户历史浏览信息的代码
Feb 03 PHP
[原创]php正则删除img标签的方法示例
May 27 PHP
PHP实现基于PDO扩展连接PostgreSQL对象关系数据库示例
Mar 31 PHP
php常用日期时间函数实例小结
Jul 04 PHP
php pdo连接数据库操作示例
Nov 18 PHP
php设计模式之观察者模式实例详解【星际争霸游戏案例】
Mar 30 PHP
Laravel5.3+框架定义API路径取消CSRF保护方法详解
Apr 06 PHP
Yii框架应用组件用法实例分析
May 15 PHP
laravel 实现用户登录注销并限制功能
Oct 24 #PHP
Laravel 5.5 实现禁用用户注册示例
Oct 24 #PHP
laravel5.5安装jwt-auth 生成token令牌的示例
Oct 24 #PHP
对laravel的csrf 防御机制详解,及form中csrf_token()的存在介绍
Oct 24 #PHP
Laravel (Lumen) 解决JWT-Auth刷新token的问题
Oct 24 #PHP
laravel5.1 ajax post 传值_token示例
Oct 24 #PHP
laravel 5.5 关闭token的3种实现方式
Oct 24 #PHP
You might like
MySql 按时间段查询数据方法(实例说明)
2008/11/02 PHP
php中mysql模块部分功能的简单封装
2011/09/30 PHP
php缓存技术详细总结
2013/08/07 PHP
async和DOM Script文件加载比较
2014/07/20 PHP
PHP的Yii框架中View视图的使用进阶
2016/03/29 PHP
PHP中error_reporting函数用法详细介绍
2017/06/11 PHP
thinkphp5.1框架模板赋值与变量输出示例
2020/05/25 PHP
js cookies实现简单统计访问次数
2009/11/24 Javascript
js DataSet数据源处理代码
2010/03/29 Javascript
js里的prototype使用示例
2010/11/19 Javascript
javascript 学习笔记(六)浏览器类型及版本信息检测代码
2011/04/08 Javascript
js分解url参数(面向对象-极简主义法应用)
2012/08/09 Javascript
javascript事件函数中获得事件源的两种不错方法
2014/03/17 Javascript
详解JavaScript中的自定义事件编写
2016/05/10 Javascript
基于Turn.js 实现翻书效果实例解析
2016/06/20 Javascript
javascript鼠标滑过显示二级菜单特效
2020/11/18 Javascript
手机端 HTML5使用photoswipe.js仿微信朋友圈图片放大效果
2016/08/25 Javascript
jquery-mobile表单的创建方法详解
2016/11/23 Javascript
Javascript DOM事件操作小结(监听鼠标点击、释放,悬停、离开等)
2017/01/20 Javascript
vue+Element-ui前端实现分页效果
2020/11/15 Javascript
[01:34]2016国际邀请赛中国区预选赛IG战队教练采访
2016/06/27 DOTA
python使用Tesseract库识别验证
2018/03/21 Python
numpy 进行数组拼接,分别在行和列上合并的实例
2018/05/08 Python
python使用RNN实现文本分类
2018/05/24 Python
详解Django模版中加载静态文件配置方法
2019/07/21 Python
使用Python实现 学生学籍管理系统
2019/11/26 Python
如何基于Django实现上下文章跳转
2020/09/16 Python
详解css3 flex弹性盒自动铺满写法
2020/09/17 HTML / CSS
匡威帆布鞋美国官网:Converse美国
2016/08/22 全球购物
印尼最大的婴儿用品购物网站:Orami
2017/09/28 全球购物
Expedia挪威官网:酒店、机票和租车
2018/03/03 全球购物
常务副总经理任命书
2014/06/05 职场文书
建筑工程技术专业求职信
2014/07/16 职场文书
2014年幼师工作总结
2014/11/22 职场文书
简历自荐信范文
2015/03/09 职场文书
物业接待员岗位职责
2015/04/15 职场文书