PHP使Laravel为JSON REST API返回自定义错误的问题


Posted in PHP onOctober 16, 2018

我正在开发某种RESTful API.发生一些错误时,我会抛出一个App :: abort($code,$message)错误.

问题是:我希望他用键“代码”和“消息”抛出一个json形成的数组,每个数组都包含上述数据.

Array
(
  [code] => 401
  [message] => "Invalid User"
)

有没有人知道是否可能,如果是,我该怎么做?

去你的app / start / global.php.

这将将401和404的所有错误转换为自定义json错误,而不是Whoops stacktrace.加这个:

App::error(function(Exception $exception, $code)
{
  Log::error($exception);
  $message = $exception->getMessage();
  // switch statements provided in case you need to add
  // additional logic for specific error code.
  switch ($code) {
    case 401:
      return Response::json(array(
          'code'   => 401,
          'message'  => $message
        ), 401);
    case 404:
      $message      = (!$message ? $message = 'the requested resource was not found' : $message);
      return Response::json(array(
          'code'   => 404,
          'message'  => $message
        ), 404);    
  }
});

这是处理此错误的众多选项之一.

制作API最好创建自己的帮助器,如Responser :: error(400,'damn'),扩展了Response类.

有点像:

public static function error($code = 400, $message = null)
{
  // check if $message is object and transforms it into an array
  if (is_object($message)) { $message = $message->toArray(); }
  switch ($code) {
    default:
      $code_message = 'error_occured';
      break;
  }
  $data = array(
      'code'   => $code,
      'message'  => $code_message,
      'data'   => $message
    );
  // return an error
  return Response::json($data, $code);
}

总结

以上所述是小编给大家介绍的PHP使Laravel为JSON REST API返回自定义错误的解决方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

PHP 相关文章推荐
一个颜色轮换的简单例子
Oct 09 PHP
php中随机显示图片的函数代码
Jun 23 PHP
解析PHP工厂模式的好处
Jun 18 PHP
PHP实现利用MySQL保存session的方法
Aug 23 PHP
详解PHP的Yii框架中组件行为的属性注入和方法注入
Mar 18 PHP
PHP小偷程序的设计与实现方法详解
Oct 15 PHP
php使用正则表达式去掉html中的注释方法
Nov 03 PHP
PHP+JavaScript实现无刷新上传图片
Feb 21 PHP
PHP两种实现无级递归分类的方法
Mar 02 PHP
thinkPHP框架实现生成条形码的方法示例
Jun 06 PHP
PHP获取类私有属性的3种方法
Sep 10 PHP
PHP获取真实IP及IP模拟方法解析
Nov 24 PHP
实现PHP中session存储及删除变量
Oct 15 #PHP
PHP实现用session来实现记录用户登陆信息
Oct 15 #PHP
PHP中使用CURL发送get/post请求上传图片批处理功能
Oct 15 #PHP
深入理解 PHP7 中全新的 zval 容器和引用计数机制
Oct 15 #PHP
php实现二叉树中和为某一值的路径方法
Oct 14 #PHP
php中青蛙跳台阶的问题解决方法
Oct 14 #PHP
PHP通过文件路径获取文件名的实例代码
Oct 14 #PHP
You might like
中国站长站 For Dede4.0 采集规则
2007/05/27 PHP
关于PHP模板Smarty的初级使用方法以及心得分享
2013/06/21 PHP
Codeigniter注册登录代码示例
2014/06/12 PHP
php eval函数一句话木马代码
2015/05/21 PHP
linux mint下安装phpstorm2020包括JDK部分的教程详解
2020/09/17 PHP
javascript显示隐藏层比较不错的方法分析
2008/09/30 Javascript
探讨AngularJs中ui.route的简单应用
2016/11/16 Javascript
微信小程序开发之入门实例教程篇
2017/03/07 Javascript
vue中添加与删除关键字搜索功能
2019/10/12 Javascript
微信小程序定义和调用全局变量globalData的实现
2019/11/01 Javascript
Vue分页效果与购物车功能
2019/12/13 Javascript
基于js实现的图片拖拽排序源码实例
2020/11/04 Javascript
[34:27]DOTA2上海特级锦标赛B组败者赛 VG VS Spirit第一局
2016/02/26 DOTA
[33:28]完美世界DOTA2联赛PWL S3 PXG vs GXR 第三场 12.19
2020/12/24 DOTA
[08:56]DOTA2-DPC中国联赛2月23日Recap集锦
2021/03/11 DOTA
Python程序中设置HTTP代理
2016/11/06 Python
python中正则表达式的使用方法
2018/02/25 Python
Python实现合并同一个文件夹下所有PDF文件的方法示例
2018/04/28 Python
Python3模拟登录操作实例分析
2019/03/12 Python
20行python代码实现人脸识别
2019/05/05 Python
33个Python爬虫项目实战(推荐)
2019/07/08 Python
python 使用while写猜年龄小游戏过程解析
2019/10/07 Python
英国轻奢珠宝品牌:Astley Clarke
2016/12/18 全球购物
什么是Smarty变量操作符?如何使用Smarty变量操作符
2014/07/18 面试题
个人求职简历的自我评价范文
2013/10/09 职场文书
旅游管理专业个人求职信范文
2013/12/24 职场文书
致100米运动员广播稿
2014/02/14 职场文书
《雪地里的小画家》教学反思
2014/02/22 职场文书
五星级酒店前台接待岗位职责
2015/04/02 职场文书
2015年实习班主任工作总结
2015/04/23 职场文书
简爱读书笔记
2015/06/26 职场文书
2015最新婚礼司仪主持词
2015/06/30 职场文书
幼儿园大班教师随笔
2015/08/14 职场文书
python flappy bird小游戏分步实现流程
2022/02/15 Python
解决MySQL添加新用户-ERROR 1045 (28000)的问题
2022/03/03 MySQL
Python实战之大鱼吃小鱼游戏的实现
2022/04/01 Python