sunnanbei/laravel-response

1.0.3 2021-04-21 09:10 UTC

This package is auto-updated.

Last update: 2024-10-21 17:19:03 UTC


README

基于laravel封装的response类

这个包的目的是?

在项目开发时,由于获取数据方式不同(ORM、DB、自定义...),会出现返回格式不统一的情况。
如果使用laravel自带的API资源(Resource)可以完美解决这个问题。
但,并不是每一个资源都需要去创建Resource的。
所以这个package的目的就是为了确保常见场景下,返回格式统一,保证唯一性。

如何使用

//通过composr安装package
composer require sunnanbei/laravel-response
use NanBei\Response\Facades\Response;
//请求成功,输出数据,返回200
return Response::success($data);
{
    "error_code": 0,
    "message": "请求成功.",
    "data": {},
    "meta": {},
    "error": "",
    "debug": []
}
{
    "error_code": 0,
    "message": "请求成功.",
    "data": [],
    "meta": {},
    "error": "",
    "debug": []
}
{
    "error_code": 0,
    "message": "请求成功.",
    "data": {
        "id": 1,
        "name": "北京"
    },
    "meta": {},
    "error": "",
    "debug": []
}
{
    "error_code": 0,
    "message": "请求成功.",
    "data": [
        {
            "id": 1,
            "name": "北京"
        },
        {
            "id": 2,
            "name": "上海"
        }
    ],
    "meta": {
        "pagination": {
            "total": 100,
            "current_page": 1,
            "last_page": 50,
            "per_page": 2
        }
    },
    "error": "",
    "debug": []
}
//请求失败,系统异常,返回500
return Response::error();
//请求失败,返回200
return Response::fail();
//请求成功,返回201
return Response::created();
//请求成功,返回204
return Response::noContent();
//请求成功,返回403
return Response::forbidden();
//请求成功,返回404
return Response::notFound();
//接管异常
···
use NanBei\Response\Exceptions\JsonResponse;

class Handler extends ExceptionHandler
{
    use JsonResponse;
···