Laravel自定义 封装便捷返回Json数据格式的引用方法

2020-10-20 15:01:24 浏览数 (1)

一般返回数据格式

代码语言:javascript复制
 return response()- json(['status' =  'success','code' =  200,'message' =  '关注成功']);

 return response()- json(['status' =  'fail','code' =  500,'error' =  '关注失败',]);

基类控制器

代码语言:javascript复制
<?php

namespace AppHttpControllers;

use IlluminateFoundationBusDispatchesJobs;
use IlluminateRoutingController as BaseController;
use IlluminateFoundationValidationValidatesRequests;
use IlluminateFoundationAuthAccessAuthorizesRequests;

class Controller extends BaseController
{
  use AuthorizesRequests, DispatchesJobs, ValidatesRequests;



  public function success($data = [])
  {
    return response()- json([
      'status' =  true,
      'code'  =  200,
      'message' =  config('errorcode.code')[200],
      'data'  =  $data,
    ]);
  }

  public function fail($code, $data = [])
  {
    return response()- json([
      'status' =  false,
      'code'  =  $code,
      'message' =  config('errorcode.code')[(int) $code],
      'data'  =  $data,
    ]);
  }
}

errorcode文件

代码语言:javascript复制
<?php


return [

  /*
  |--------------------------------------------------------------------------
  | customized http code
  |--------------------------------------------------------------------------
  |
  | The first number is error type, the second and third number is
  | product type, and it is a specific error code from fourth to
  | sixth.But the success is different.
  |
  */

  'code' =  [
    200 =  '成功',
    200001 =  '缺少必要的参数',

    //文章
    503001 =  '上传文件的格式不正确',
    503002 =  '同步成功-记录保存失败',
    503003 =  '权限错误',
    503004 =  '文章保存失败', 
    403017 =  '临近定时时间不能取消发送任务',
    403018 =  '临近定时时间不能修改发送任务',
    403019 =  '超过发送时间不能发送',
    403020 =  '缺少发表记录ID参数',
    //SMS
    416001 =  '添加成功,审核中,请耐心等待',
    416002 =  '签名添加失败',
  ],

];

可以对状态信息进行归类,如4–为用户端错误,5–位服务器端错误,2–为请求成功 。。。。。。。

返回引用

代码语言:javascript复制
return $this- fail(503003);


return $this- Success();

以上这篇Laravel自定义 封装便捷返回Json数据格式的引用方法就是小编分享给大家的全部内容了,希望能给大家一个参考。

0 人点赞