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中var_export与var_dump的区别分析
Aug 21 PHP
解析PHP中intval()等int转换时的意外异常情况
Jun 21 PHP
php获得url参数中具有&的值的方法
Mar 05 PHP
linux下编译安装memcached服务
Aug 03 PHP
php中文繁体和简体相互转换的方法
Mar 21 PHP
php使用GD创建保持宽高比缩略图的方法
Apr 17 PHP
php连接oracle数据库的方法(测试成功)
May 26 PHP
yii2使用GridView实现数据全选及批量删除按钮示例
Mar 01 PHP
laravel migrate初学常见错误的解决方法
Oct 11 PHP
Thinkphp5.0 框架的请求方式与响应方式分析
Oct 14 PHP
aec加密 php_php aes加密解密类(兼容php5、php7)
Mar 14 PHP
阿里云服务器搭建Php+Apache运行环境的详细过程
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
需要注意的几个PHP漏洞小结
2012/02/05 PHP
PHP文章采集URL补全函数(FormatUrl)
2012/08/02 PHP
PHP5中GD库生成图形验证码(有汉字)
2013/07/28 PHP
php生成唯一数字id的方法汇总
2015/11/18 PHP
PHP下载文件的函数实例代码
2016/05/18 PHP
php中static和const关键字用法分析
2016/12/07 PHP
kindeditor 加入七牛云上传的实例讲解
2017/11/12 PHP
php在windows环境下获得cpu内存实时使用率(推荐)
2018/02/08 PHP
PHP mongodb操作类定义与用法示例【适合mongodb2.x和mongodb3.x】
2018/06/16 PHP
通过 Dom 方法提高 innerHTML 性能
2008/03/26 Javascript
js 第二代身份证号码的验证机制代码
2011/05/12 Javascript
JS跨域问题详解
2014/11/25 Javascript
让图片跳跃起来  javascript图片轮播特效
2016/02/16 Javascript
js判断鼠标位置是否在某个div中的方法
2016/02/26 Javascript
AngularJS国际化详解及示例代码
2016/08/18 Javascript
如何解决.vue文件url引用文件的问题
2019/01/18 Javascript
JS document文档的简单操作完整示例
2020/01/13 Javascript
如何实现iframe父子传参通信
2020/02/05 Javascript
学习 Vue.js 遇到的那些坑
2021/02/02 Vue.js
介绍Python中的一些高级编程技巧
2015/04/02 Python
Python实现简单的四则运算计算器
2016/11/02 Python
python实现滑雪者小游戏
2020/02/22 Python
Python astype(np.float)函数使用方法解析
2020/06/08 Python
解决python3.6用cx_Oracle库连接Oracle的问题
2020/12/07 Python
jupyter 添加不同内核的操作
2021/02/06 Python
严选全球尖货,立足香港:Bonpont宝盆
2018/07/24 全球购物
英国领先的酒杯和水晶玻璃器皿制造商:Dartington Crystal
2019/06/23 全球购物
汽车检测与维修个人求职信
2013/09/24 职场文书
电子商务个人自荐信
2013/12/12 职场文书
初中英语演讲稿
2014/04/29 职场文书
个人评语大全
2014/05/04 职场文书
小学爱国卫生月活动总结
2014/06/30 职场文书
Feign调用全局异常处理解决方案
2021/06/24 Java/Android
Flask使用SQLAlchemy实现持久化数据
2021/07/16 Python
php png失真的原因及解决办法
2021/11/17 PHP
彩虹社八名人气艺人全新周边限时推出,性转女装男装一次拥有!
2022/04/01 日漫