veka-server/dispatcher

Un dispatcher PSR-7 et PSR-15 minimaliste

0.1.1 2017-10-19 14:30 UTC

This package is auto-updated.

Last update: 2024-03-26 18:57:18 UTC


README

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.

Dependencies

Ce paquet requiere PHP 7.1 minimum.

Installation

Via composer lorsqu'une version stable sera dispo

composer require veka-server/dispatcher

Via le fichier JSON de composer - DEV VERSION

"veka-server/dispatcher": "dev-master@dev"

Utilisation

Création de l'instance du dispatcher

// creation du dispatcher
$Dispatcher = new VekaServer\Dispatcher\Dispatcher();

Ajout des middlewares

// 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

// recuperation de la requete recue
$request = \GuzzleHttp\Psr7\ServerRequest::fromGlobals();

Execute les middlewares sur la requete créer precedement et recupere la reponse

// lance l'execution des middlewares et recupere la reponse
$response = $Dispatcher->process($request);

Affiche la reponse a l'ecran

// si la reponse est presente ont l'affiche
if($response instanceof \Psr\Http\Message\ResponseInterface)
    $Dispatcher->send($response);