ellipse / dispatcher-callable
Psr-15 中间件分发器工厂解析调用者
1.1.1
2018-03-13 15:11 UTC
Requires
- php: >=7.0
- ellipse/dispatcher: ^1.6
- ellipse/handlers-callable: ^1.0
- ellipse/middleware-callable: ^1.0
- psr/http-message: ^1.0
- psr/http-server-handler: ^1.0
- psr/http-server-middleware: ^1.0
Requires (Dev)
- eloquent/phony-kahlan: ^1.0
- kahlan/kahlan: ^4.0
README
此包为从 ellipse/dispatcher 包中实现的 Ellipse\DispatcherFactoryInterface
提供一个工厂装饰器。它允许使用中间件和请求处理程序作为调用者来生成 Ellipse\Dispatcher
实例。
要求 php >= 7.0
安装 composer require ellipse/dispatcher-callable
运行测试 ./vendor/bin/kahlan
创建一个解析调用者的分发器工厂
此包提供了一个实现 Ellipse\DispatcherFactoryInterface
的 Ellipse\Dispatcher\CallableResolver
类,它允许装饰实现此接口的任何其他对象。
装饰后,结果分发器工厂可以用来生成 Ellipse\Dispatcher
实例,将调用者解析为从 ellipse/middleware-callable 包中的 Ellipse\Middleware\CallableMiddleware
或从 ellipse/handlers-callable 包中的 Ellipse\Handlers\CallableRequestHandler
。
CallableMiddleware
和 CallableRequestHandler
的逻辑在 ellipse/middleware-callable 和 ellipse/handlers-callable 文档页面中描述。
<?php namespace App; use Psr\Http\Message\ServerRequestInterface; use Psr\Http\Server\RequestHandlerInterface; use Ellipse\DispatcherFactory; use Ellipse\Dispatcher\CallableResolver; // Decorate a DispatcherFactoryInterface implementation with a CallableResolver. $factory = new CallableResolver(new DispatcherFactory); // This callable acts as a middleware. $middleware = function (ServerRequestInterface $request, RequestHandlerInterface $handler) { // ... } // This callable acts as a request handler. $handler = function (ServerRequestInterface $request) { // ... } // A dispatcher using both callables and Psr-15 instances can now be created. $dispatcher = $factory($handler, [$middleware, new SomeMiddleware]);