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 相关文章推荐
ajax缓存问题解决途径
Dec 06 PHP
PHP 字符串正则替换函数preg_replace使用说明
Jul 15 PHP
基于wordpress主题制作的具体实现步骤
May 10 PHP
php缩放gif和png图透明背景变成黑色的解决方法
Oct 14 PHP
php获取四位字母和数字的随机数的实现方法
Jan 09 PHP
PHP中预定义的6种接口介绍
May 12 PHP
四个PHP非常实用的功能
Sep 29 PHP
PHP导出带样式的Excel示例代码
Aug 28 PHP
PHP实现数组的笛卡尔积运算示例
Dec 15 PHP
PHP多维数组指定多字段排序的示例代码
May 16 PHP
PHP基于mcript扩展实现对称加密功能示例
Feb 21 PHP
实例化php类时传参的方法分析
Jun 05 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+MSSQL分页的例子
2006/10/09 PHP
PHP中foreach()用法汇总
2015/07/02 PHP
javascript编程起步(第五课)
2007/02/27 Javascript
用js实现预览待上传的本地图片
2007/03/15 Javascript
jquery 双色表格实现代码
2009/12/08 Javascript
优化javascript的执行速度
2010/01/23 Javascript
javascript 动态修改样式和层叠样式表代码
2010/04/27 Javascript
使用Grunt.js管理你项目的应用说明
2013/04/24 Javascript
AngularJS Controller作用域
2017/01/09 Javascript
angular实现form验证实例代码
2017/01/17 Javascript
微信小程序之picker日期和时间选择器
2017/02/09 Javascript
Angular JS 生成动态二维码的方法
2017/02/23 Javascript
vue如何集成raphael.js中国地图的方法示例
2017/08/15 Javascript
jQuery Datatable 多个查询条件自定义提交事件(推荐)
2017/08/24 jQuery
详解微信小程序实现仿微信聊天界面(各种细节处理)
2019/02/17 Javascript
[02:04]2018DOTA2亚洲邀请赛Secret赛前采访
2018/04/03 DOTA
[05:24]TI9采访——教练
2019/08/24 DOTA
使用python绘制人人网好友关系图示例
2014/04/01 Python
Python实现运行其他程序的四种方式实例分析
2017/08/17 Python
pycharm 在windows上编辑代码用linux执行配置的方法
2018/10/27 Python
tesserocr与pytesseract模块的使用方法解析
2019/08/30 Python
python FTP批量下载/删除/上传实例
2019/12/22 Python
python爬取王者荣耀全皮肤的简单实现代码
2020/01/31 Python
python如何安装下载后的模块
2020/07/03 Python
Python中openpyxl实现vlookup函数的实例
2020/10/28 Python
完美解决torch.cuda.is_available()一直返回False的玄学方法
2021/02/06 Python
菲律宾票务网站:StubHub菲律宾
2018/04/21 全球购物
JD Sports西班牙:英国领先的运动服装公司
2020/01/06 全球购物
自荐信不宜过于夸大
2013/11/06 职场文书
服务之星事迹材料
2014/05/03 职场文书
环保口号大全
2014/06/12 职场文书
中学生检讨书1000字
2014/10/28 职场文书
留学推荐信英文范文
2015/03/26 职场文书
大学体育课感想
2015/08/10 职场文书
python中的3种定义类方法
2021/11/27 Python
SQL Server删除表中的重复数据
2022/05/25 SQL Server