kapitanluffy / middlewarestack
在单个类中实现PSR-15 Middlewares
dev-master
2017-10-29 04:31 UTC
Requires
- php: >=5.4
- http-interop/http-middleware: ^0.5.0
- psr/http-message: ^1.0
Requires (Dev)
- phpunit/phpunit: ^5.7
This package is auto-updated.
Last update: 2024-09-06 23:21:10 UTC
README
在单个类中实现PSR-15 Middlewares。
为什么?
正如提案中所定义的,中间件"处理"请求并返回响应。同样地,RequestHandlers"处理"请求并返回响应。这个包的想法是简化PSR-15提供的接口的目标。
安装
composer require kapitanluffy/middlewarestack
用法
use kapitanluffy\middleware\MiddlewareStack; use Zend\Diactoros\ServerRequestFactory; $innerStack = new MiddlewareStack(array( new Middlewares\Robots(false), new Middlewares\TrailingSlash(false) )); $stack = new MiddlewareStack(array( new Middlewares\Whoops(), // Use another stack as middleware $innerStack, // Create an inner stack with arrays array( new Middlewares\ResponseTime(), new Middlewares\Uuid(), ), // Create closures as middlewares function ($request, $stack) { $response = $stack->handle($request); return $response->withHeader('X-Passed-MiddlewareClosure', 1); } )); // let the middleware stack handle the request $request = ServerRequestFactory::fromGlobals(); $response = $stack->handle($request);
中间件
您可以在这里找到中间件列表,或者通过实现MiddlewareInterface来创建自己的中间件。