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

 更新时间2018年10月16日 15:35:53   作者代码日志   我要评论

这篇文章主要介绍了PHP使Laravel为JSON REST API返回自定义错误的问题,非常不错具有一定的参考借鉴价值需要的朋友可以参考下

我正在开发某种RESTful API.发生一些错误时,?#19968;?#25243;出一个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最?#20040;?#24314;自己的帮助器,如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返回自定义错误的解决方法希望?#28304;?#23478;有所帮助如果大家有任?#25105;?#38382;请给我留言小编会及时回?#21019;?#23478;的在此也非常感谢大家对脚本之家网站的支持

相关文章

  • PHP添加?#35745;?#27700;印压缩剪切的封装类

    PHP添加?#35745;?#27700;印压缩剪切的封装类

    为了防止自己辛苦制作的作品被别人窃取经常给作品添加水印以此保证作?#36820;?#21807;一性那么该怎么给?#35745;?#28155;加水印呢如果作品尺寸过大该如何处理呢下面小编给大家详细介绍有关PHP给?#35745;?#28155;加水印 压缩 剪切的封装类需要的朋友可以参考下
    2015-08-08
  • PHP控制前台弹出对话框的实现方法

    PHP控制前台弹出对话框的实现方法

    本文给大家分享通过php echo出javascript脚本来控制前台弹出对话框的效果非常不错具有参考借鉴价值感兴趣的朋友一起看下吧
    2016-08-08
  • php静态文件返回304技巧分享

    php静态文件返回304技巧分享

    这篇文章主要分享了一则php静态文件返回304的小技巧,需要的朋友可以参考下
    2015-01-01
  • php中sql注入漏?#35789;?#20363; sql注入漏洞修复

    php中sql注入漏?#35789;?#20363; sql注入漏洞修复

    这篇文章主要介绍了php中sql注入漏?#35789;?#20363;大家在开发中一定要注意
    2014-01-01
  • ThinkPHP3.1.3版本新特性概述

    ThinkPHP3.1.3版本新特性概述

    这篇文章主要介绍了ThinkPHP3.1.3版本新特性,需要的朋友可以参考下
    2014-06-06
  • 修改destoon会员公司的?#26412;?#24577;中的com目录的方法

    修改destoon会员公司的?#26412;?#24577;中的com目录的方法

    这篇文章主要介绍了修改destoon会员公司的?#26412;?#24577;中的com目录的方法,在?#26412;?#24577;设置中很实用的技巧,需要的朋友可以参考下
    2014-08-08
  • PHP无限分类(树形类)的深入分析

    PHP无限分类(树形类)的深入分析

    本篇文章是对PHP无限分类(树形类)进行了详细的分析介绍需要的朋友参考下
    2013-06-06
  • 最新评论

    常用在线小工具

    35ѡ7