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 相关文章推荐
如何对PHP程序中的常见漏洞进行攻击
Oct 09 PHP
发布一个用PHP fsockopen写的HTTP下载的类
Feb 22 PHP
php获取用户IPv4或IPv6地址的代码
Nov 15 PHP
PHP 清空varnish 缓存的详解(包括指定站点下的)
Jun 20 PHP
CodeIgniter框架提示Disallowed Key Characters的解决办法
Apr 21 PHP
destoon整合UCenter图文教程
Jun 21 PHP
php生成QRcode实例
Sep 22 PHP
php保存任意网络图片到服务器的方法
Apr 14 PHP
php将html转成wml的WAP标记语言实例
Jul 08 PHP
详解在PHP的Yii框架中使用行为Behaviors的方法
Mar 18 PHP
Yii2――使用数据库操作汇总(增删查改、事务)
Dec 19 PHP
解决laravel(5.5)访问public报错的问题
Oct 12 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
收音机频率指针指示不准确和灵敏度低问题
2021/03/02 无线电
改进的IP计数器
2006/10/09 PHP
PHP 过滤页面中的BOM(实现代码)
2013/06/29 PHP
基于flush()不能按顺序输出时的解决办法
2013/06/29 PHP
php读取mysql的简单实例
2014/01/15 PHP
zf框架db类的分页示例分享
2014/03/14 PHP
ThinkPHP中pathinfo的访问模式、路径访问模式及URL重写总结
2014/08/23 PHP
Java中final关键字详解
2015/08/10 PHP
PHP中SERIALIZE和JSON的序列化与反序列化操作区别分析
2016/10/11 PHP
thinkphp3.2嵌入百度编辑器ueditor的实例代码
2017/07/13 PHP
jQuery实现仿美橙互联两级导航菜单的方法
2015/03/09 Javascript
jquery ajax分页插件的简单实现
2016/01/27 Javascript
JS实现图片局部放大或缩小的方法
2016/08/20 Javascript
JavaScript数组操作详解
2017/02/04 Javascript
python 实现插入排序算法
2012/06/05 Python
Python中文件的写入读取以及附加文字方法
2019/01/23 Python
Python selenium根据class定位页面元素的方法
2019/02/26 Python
python制作抖音代码舞
2019/04/07 Python
python实现单目标、多目标、多尺度、自定义特征的KCF跟踪算法(实例代码)
2020/01/08 Python
pyinstaller打包单文件时--uac-admin选项不起作用怎么办
2020/04/15 Python
详解python变量与数据类型
2020/08/25 Python
python读取excel数据并且画图的实现示例
2021/02/08 Python
香港优质食材和美酒专门店:FoodWise
2017/09/01 全球购物
英国家庭、花园、汽车和移动解决方案:Easylife Group
2018/05/23 全球购物
欧姆龙医疗欧洲有限公司:Omron Healthcare Europe B.V
2020/06/13 全球购物
高中自我鉴定范文
2013/11/03 职场文书
大学生学业生涯规划
2014/01/05 职场文书
接受捐赠答谢词
2014/01/27 职场文书
大学英语演讲稿范文
2014/04/24 职场文书
我的小天地教学反思
2014/04/30 职场文书
法律顾问服务方案
2014/05/15 职场文书
公司年会策划方案
2014/05/17 职场文书
接待员岗位职责范本
2015/04/15 职场文书
Springboot如何使用logback实现多环境配置?
2021/06/16 Java/Android
Spring Boot 排除某个类加载注入IOC的操作
2021/08/02 Java/Android
Python绘画好看的星空图
2022/03/17 Python