jerowork / aura-router-nested-middleware
此包已被放弃,不再维护。未建议替代包。
用于 Aura Router 的 PSR-15 中间件,具有嵌套中间件路由处理功能
0.4.3
2019-04-10 16:37 UTC
Requires
- php: ^7.0
- aura/router: ^3.1
- jerowork/middleware-request-handler: ^0.4 || ^0.5
Requires (Dev)
- phpunit/phpunit: ^6.5 || ^7.0 || ^8.0
- zendframework/zend-diactoros: ^1.7 || ^2.0
README
PSR-15 中间件,用于 Aura Router 并具有嵌套中间件路由处理功能。
安装
通过 Composer 安装
$ composer require jerowork/aura-router-nested-middleware
使用方法
use Aura\Router\RouterContainer; use Jerowork\AuraRouterNestedMiddleware\AuraRouterNestedMiddleware; // setup Aura Router $router = new RouteContainer(); // add middleware to your general middleware queue $middleware[] = new AuraRouterNestedMiddleware($router); // add routes with middleware $map = $router->getMap(); $map->get('home', '/', [ new SomeMiddleware(), new AnotherMiddleware(), new HomeAction(), ]); // route with no other middleware than the blog action $map->get('blog', '/blog', new BlogAction());
带有 PSR-15 实现的 Http 动作
从现在起,每个 http 动作都可以实现 Interop\Http\Server\MiddlewareInterface
。
示例动作
use Interop\Http\Server\MiddlewareInterface; class HomeAction implements MiddlewareInterface { /** * @inheritDoc */ public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface { $response = $handler->handle($request); $response->getBody()->write('Hello world!'); return $response; } }