ars / api-responder-laravel
一个简化创建标准化API响应的库。
v1.0.7
2024-09-28 09:54 UTC
Requires
- php: >=8.0
README
ars/api-responder-laravel 是一个Laravel包,旨在简化标准化API响应的创建。它提供了一个用户友好的界面来管理API响应,包括常见的状态码和错误消息,使Laravel中的API开发更加高效和一致。
特性
- 成功和错误响应的标准化响应结构。
- 支持链接和元数据的可定制响应数据。
- 通过门面和服务提供者轻松集成到Laravel中。
安装
您可以通过Composer安装此库。运行以下命令
composer require ars/api-responder-laravel
用法
基本响应
您可以使用Responder门面创建标准化的API响应。
示例
use Responder; return Responder::ok($response); return Responder::setMessage('success')->ok($response); return Responder::tooManyRequests(); return Responder::notFound(); return Responder::unAuthorized(); $data = $this->repository->paginate(); $links = [ 'next' => $data->nextPageUrl(), 'prev' => $data->previousPageUrl(), 'path' => $data->path(), ]; $meta = [ 'total' => $data->total(), 'current_page' => $data->currentPage(), 'per_page' => $data->perPage(), ]; return Responder::setMeta($meta)->setLinks($links)->ok($data->items()); return Responder::setStatusCode(500)->setMessage($e->getMessage())->respond();
{ "message": "Operation successful!", "success": true, "data": { "accessToken": "28|PDVEA7z6mUPcbbIybkpiMPJMvy3TLtuWOguiGDGn13c67491", "tokenType": "Bearer", "expiresIn": null } }
其他方法
ok(array $data)
: 返回200响应。respond(array $data)
: 准备并返回响应。setData(array $data)
: 设置响应数据。setMessage(string $message)
: 设置响应消息。appendData(array $data)
: 向响应追加额外数据。setErrorCode(mixed $errorCode)
: 设置响应的错误代码。setStatusCode(int $statusCode)
: 设置响应的HTTP状态码。setLinks(array $links)
: 设置分页或其他链接。setMeta(array $meta)
: 设置响应的元数据。
消息
该库支持各种状态消息
如果提供了消息键,请使用 setMessage(string $message)
设置消息。
- success: "操作成功!"
- error: "操作遇到错误!"
- validation_error: "验证失败!"
- internal_error: "内部服务器错误!"
- created: "已创建。"
- updated: "已更新。"
- deleted: "已删除。"
- send: "已发送。"
- before_posted: "已发布。"
- expire: "已过期。"
- not_valid: "无效。"
- used: "已使用。"
- re_send: "已重发。"
- unauthenticated: "用户未认证!"
- unauthorized: "用户无权访问此资源!"
- not_found: "未找到资源!"
- bad_request: "请求无效!"
- to_many_request: "请求过多!"
贡献
欢迎贡献!请遵循以下指南
- 复制仓库。
- 创建功能分支(git checkout -b feature/my-new-feature)。
- 提交您的更改(git commit -am '添加新功能')。
- 推送到分支(git push origin feature/my-new-feature)。
- 打开Pull Request。
许可证
此库采用MIT许可证。
联系
对于支持或问题,请在GitHub上创建一个问题。