Laravel封装 自定义Json数据格式

11 篇文章 0 订阅

laravel json返回值封装 以便维护:

一般返回:

return response()->json(['status' => 'success','code' => 200,'message' => '成功']);
return response()->json(['status' => 'fail','code' => 500,'error' => '失败',]);

下边开始封装:(在基类中添加)

<?php 
namespace  App\Http\Controllers;
use Illuminate\Foundation\Bus\DispatchesJobs;
use Illuminate\Routing\Controller as BaseController;
use Illuminate\Foundation\Validation\ValidatesRequests;
use Illuminate\Foundation\Auth\Access\AuthorizesRequests;

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.php(新建在config目录下哦!)内容如下:

<?php
return [

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

];

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

使用:

return $this->fail(503003); 
return $this->Success();
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值