alanvdb/middleware-dispatcher
Composer 安装命令:
composer require alanvdb/middleware-dispatcher
包简介
A basic PSR compliant middleware dispatcher
README 文档
README
A basic PSR compliant middleware dispatcher.
Overview
The middleware-dispatcher library provides a simple and extensible middleware dispatcher that complies with the PSR-15 standards. It allows you to handle HTTP server requests by processing a stack of middlewares.
Features
- PSR-15 compliant
- Simple and easy-to-use API
- Supports any PSR-15 compatible middlewares
- Handles exceptions and invalid middlewares gracefully
Installation
To install the middleware-dispatcher library, use Composer:
composer require alanvdb/middleware-dispatcher
Usage
Here is an example of how to use the middleware-dispatcher:
<?php require 'vendor/autoload.php'; use AlanVdb\Dispatcher\Dispatcher; use AlanVdb\Dispatcher\Factory\DispatcherFactory; use Psr\Http\Server\RequestHandlerInterface; use Psr\Http\Message\ServerRequestInterface; use Psr\Http\Message\ResponseInterface; use Psr\Http\Server\MiddlewareInterface; use GuzzleHttp\Psr7\ServerRequest; use GuzzleHttp\Psr7\Response; class ExampleMiddleware implements MiddlewareInterface { public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface { // Add your middleware logic here return $handler->handle($request); } } $middlewares = [new ExampleMiddleware()]; $factory = new DispatcherFactory(); $dispatcher = $factory->createDispatcher($middlewares); $request = new ServerRequest('GET', 'https://api.example.com/data'); $response = $dispatcher->handle($request); echo $response->getBody();
Testing
To run the tests, use PHPUnit. Ensure you have PHPUnit installed and execute the following command:
vendor/bin/phpunit
Contributing
Contributions are welcome! Please follow these steps to contribute:
- Fork the project
- Create a branch for your feature (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
Ensure your code follows PSR coding standards and includes relevant tests.
License
This project is licensed under the MIT License. See the MIT license file for details.
Issues and Feedback
If you encounter any issues or have feedback, please open an issue on the GitHub repository.
Acknowledgements
alanvdb/middleware-dispatcher 适用场景与选型建议
alanvdb/middleware-dispatcher 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 19 次下载、GitHub Stars 达 0, 最近一次更新时间为 2024 年 08 月 06 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 alanvdb/middleware-dispatcher 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 alanvdb/middleware-dispatcher 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 19
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 6
- 依赖项目数: 1
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2024-08-06