twom/laravel-responder

此包最新版本(1.3)没有可用的许可信息。

API和Laravel项目的响应器

1.3 2020-06-14 17:02 UTC

This package is auto-updated.

Last update: 2024-09-15 02:37:57 UTC


README

安装

composer require twom/laravel-responder

您必须将服务提供者添加到 config/app.php 以加载语言

'providers' => [
	 // for laravel 5.8 and below
	 \Twom\Responder\ResponderServiceProvider::class,
];

响应架构

{
	"status": "success or error",
	"status_code": 200,
	"message": "your setted message",
	"data": "your data",
	"errors": "your errors"
}

注意:支持 faen 语言。

响应类型

设置方法

示例

注意:您必须使用此外观。

use Twom\Responder\Facade\Responder; // use of this

普通响应

return Responder::respond();

输出

{
    "status_code": 200,
    "status": "success",
    "message": "operation successfully!"
}

注意:默认模式为成功操作。

自定义响应

return Responder::respond([  
  "status" => "my status",  
  "status_code"=> 300,  
  "message" => "custom message",  
]);

输出

{
    "status_code": 300,
    "status": "my status",
    "message": "custom message"
}

验证错误响应

return Responder::respondValidationError([  
  'title' => [  
	  'the title field is required.', // ...another errors  
  ], // ... another fields  
]);

输出

{
    "status_code": 422,
    "status": "error",
    "errors": {
        "title": [
            "the title field is required."
        ]
    },
    "message": "validation error!"
}

创建响应

return Responder::respondCreated();
//	or  
return Responder::respondCreated("the created object");

输出

{
    "status_code": 201,
    "status": "success",
    "data": "the created object",
    "message": "operation successfully!"
}

错误请求响应

return Responder::respondBadRequest();

输出

{
    "status_code": 400,
    "status": "error",
    "message": "operation has error!"
}

使用设置器

return Responder::setMessage("test message")  
	 ->setRespondData(["the data"])  
	 ->setRespondError(["title"=> ["errors"]])  
	 ->setStatusCode(203)  
	 ->respond();

输出

{
    "status_code": 203,
    "status": "success",
    "message": "test message",
    "data": [
        "the data"
    ],
    "errors": {
        "title": [
            "errors"
        ]
    }
}