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();