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 相关文章推荐
加强版phplib的DB类
Mar 31 PHP
php设计模式 Chain Of Responsibility (职责链模式)
Jun 26 PHP
PHP中文处理 中文字符串截取(mb_substr)和获取中文字符串字数
Nov 10 PHP
关于url地址传参数时字符串有回车造成页面脚本赋值失败的解决方法
Jun 28 PHP
php stream_get_meta_data返回值
Sep 29 PHP
Smarty保留变量用法分析
May 23 PHP
tp5(thinkPHP5)框架连接数据库的方法示例
Dec 24 PHP
PHP中number_format()函数的用法讲解
Apr 08 PHP
laravel 框架实现无限级分类的方法示例
Oct 31 PHP
yii 框架实现按天,月,年,自定义时间段统计数据的方法分析
Apr 04 PHP
TP5框架实现签到功能的方法分析
Apr 05 PHP
Thinkphp 框架扩展之行为扩展原理与实现方法分析
Apr 23 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
php代码审计比较有意思的例子
2014/05/07 PHP
destoon设置自定义搜索的方法
2014/06/21 PHP
php json转换成数组形式代码分享
2014/11/10 PHP
跨浏览器PHP下载文件名中的中文乱码问题解决方法
2015/03/05 PHP
YII Framework框架教程之国际化实现方法
2016/03/14 PHP
SWFObject Flash js调用类
2008/07/08 Javascript
jQuery学习笔记之jQuery的事件
2010/12/22 Javascript
jQuery性能优化28条建议你值得借鉴
2013/02/16 Javascript
js实现的折叠导航示例
2013/11/29 Javascript
javascript实现阻止iOS APP中的链接打开Safari浏览器
2014/06/12 Javascript
js/jquery判断浏览器的方法小结
2014/09/02 Javascript
基于jQuery倾斜打开侧边栏菜单特效代码
2015/09/15 Javascript
为何JS操作的href都是javascript:void(0);呢
2015/11/12 Javascript
易操作的jQuery表单提示插件
2015/12/01 Javascript
js获取html的span标签的值方法(超简单)
2016/07/26 Javascript
通过Nodejs搭建网站简单实现注册登录流程
2019/06/14 NodeJs
vue 使用element-ui中的Notification自定义按钮并实现关闭功能及如何处理多个通知
2019/08/17 Javascript
小程序如何写动态标签的实现方法
2020/02/05 Javascript
mpvue网易云短信接口实现小程序短信登录的示例代码
2020/04/03 Javascript
详解JSON.stringify()的5个秘密特性
2020/05/26 Javascript
python 自动提交和抓取网页
2009/07/13 Python
python numpy函数中的linspace创建等差数列详解
2017/10/13 Python
对matplotlib改变colorbar位置和方向的方法详解
2018/12/13 Python
python实现代码统计器
2019/09/19 Python
英国家居用品和家居装饰品购物网站:Cox & Cox
2019/08/25 全球购物
教育孩子心得体会
2014/01/01 职场文书
《秋游》教学反思
2014/04/24 职场文书
企业员工薪酬方案
2014/06/04 职场文书
2014年感恩节活动策划方案
2014/10/06 职场文书
写给老婆的保证书
2015/02/27 职场文书
教师思想工作总结2015
2015/05/13 职场文书
简短的36句中秋节祝福信息语句
2019/09/09 职场文书
详解Apache SkyWalking 告警配置指南
2021/04/22 Servers
Python打包为exe详细教程
2021/05/18 Python
为什么MySQL分页用limit会越来越慢
2021/07/25 MySQL
GO中sync包自由控制并发示例详解
2022/08/05 Golang