Dispatcher
Un dispatcher PSR-7 et PSR-15 ultra minimaliste.
Il est basé sur tuto de grafikart.fr sur les middleware PSR.
Il sera ammené a evolué pour maintenir les normes PSR., (*1)
Dependencies
Ce paquet requiere PHP 7.1 minimum., (*2)
Installation
Via composer lorsqu'une version stable sera dispo, (*3)
composer require veka-server/dispatcher
Via le fichier JSON de composer - DEV VERSION, (*4)
"veka-server/dispatcher": "dev-master@dev"
Utilisation
Création de l'instance du dispatcher, (*5)
// creation du dispatcher
$Dispatcher = new VekaServer\Dispatcher\Dispatcher();
Ajout des middlewares, (*6)
// ajout des middlewares
$Dispatcher
->pipe(new \Middlewares\Whoops())
->pipe(new VK\Framework\MyMiddleware())
->pipe(new VK\Framework\MyMiddlewareA());
Création de la requete PSR-7 a traiter via GuzzleHttp, (*7)
// recuperation de la requete recue
$request = \GuzzleHttp\Psr7\ServerRequest::fromGlobals();
Execute les middlewares sur la requete créer precedement et recupere la reponse, (*8)
// lance l'execution des middlewares et recupere la reponse
$response = $Dispatcher->process($request);
Affiche la reponse a l'ecran, (*9)
// si la reponse est presente ont l'affiche
if($response instanceof \Psr\Http\Message\ResponseInterface)
$Dispatcher->send($response);