quetzal-studio / laravel-api-response
Laravel 自定义 API 响应
v0.2.1
2023-12-21 08:11 UTC
Requires
- php: ^7.4|^8.0
README
安装
composer require quetzal-studio/laravel-api-response
使用方法
使用数组
$user = [ 'id' => 1, 'name' => 'Ata', ]; return api_response($user); // result { "data": { "id": 1, "name": "Ata" }, "time": 4, "code": 200, "message": "Successful" }
使用模型
$user = Model::first(); return api_response($user); // result { "data": { "id": 1, "name": "Ata" }, "time": 4, "code": 200, "message": "Successful" }
使用正文
用户正文类
use QuetzalStudio\ApiResponse\Body; $body = Body::make(code: 404, message: 'Not Found'); return api_response($body)->status(404); // result { "time": 6, "code": 404, "message": "Not Found", "data": null }
使用 make_body 函数
return api_response( make_body(code: 404, message: 'Not Found') )->status(404); // result { "time": 6, "code": 404, "message": "Not Found", "data": null }
使用 withBody 方法
return api_response()->withBody([ 'code' => 403, 'message' => 'Forbidden', 'data' => [ 'ip' => '127.0.0.1', ], ])->status(403); // result { "data": { "ip": "127.0.0.1" }, "time": 6, "code": 403, "message": "Forbidden" }
更改响应键
/** * Bootstrap any application services. */ public function boot(): void { Response::setupBodyKeys([ 'code' => 'status_code', 'message' => 'status_message', 'data' => 'result', ]); }
排除某些键
/** * Bootstrap any application services. */ public function boot(): void { Response::excludeBodyKeys(['time', 'code']); }