multividas/api-responser
最新稳定版本:v2024.07.01.22.19
Composer 安装命令:
composer require multividas/api-responser
包简介
Composer package to facilitates the process of structuring and generating API responses
README 文档
README
API Responser
Composer package to facilitates the process of structuring and generating API responses
Installation
Require this package with composer.
composer require multividas/api-responser
ServiceProvider:
[Optional] Adding the ApiResponserServiceProvider to the providers array in config/app.php
\Multividas\ApiResponser\Providers\ApiResponserServiceProvider::class,
[Optional] To get X-Application-Name http response header, Copy the package config to your local config with the publish command:
php artisan vendor:publish --tag=api-responser-config
Usage
use \Multividas\ApiResponser\Traits\ApiResponser; class Controller extends BaseController { use ApiResponser; }
ApiResponser Interface
Using the ApiResponser interface methods.
showAll()method receivesCollection|JsonResourceas its param.showOne()method receivesModel|JsonResource $instanceas its param.
use \Multividas\ApiResponser\Interfaces\ApiRepositoryInterface; class PostsController extends Controller { public function __construct( public ApiRepositoryInterface $apiRepository ) { } public function index(): JsonResponse { return $this->apiRepository->showAll(Post::all()); } public function show(Post $post): JsonResponse { if (!$post instanceof Post) { return $this->infoResponse('Item Not Found', 404, []); } return $this->apiRepository->showOne($post); } }
ApiResponser Facade
Using the ApiResponser facade design pattern.
use Multividas\ApiResponser\Facades\ApiResponser; class PostsController extends Controller { public function index(): JsonResponse { return ApiResponser::showAll(Post::all()); } public function show(string $postId): JsonResponse { $post = Post::find($postId); if (!$post instanceof Post) { return $this->infoResponse('Post Not Found', 404, (object)[]); } return ApiResponser::showOne($post); } }
This approach provides a cleaner and more organized way to interact with the ApiRepositoryInterface instance in your controller methods.
Success Response
Successful response containing the requested data and an appropriate status code.
{
"data": [],
"code": 200,
"meta": {}
}
Learn more: Multividas API Responser
Run PHPUnit tests
composer test
🤝 Contributing
Please read the contributing guide.
🛡️ Security Issues
If you discover a security vulnerability within Multividas, we would appreciate your help in disclosing it to us responsibly, please check out our security issues guidelines.
🛡️ License
Licensed under the MIT license.
Email: multividasdotcom@gmail.com
统计信息
- 总下载量: 538
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 1
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2023-11-09