Eteona Http Request Handlers
This package provides a PSR-15 http server request handler implementation.
Installation
Run the following to install the library:
$ composer require eteona/http-request-handlers
Usage
Using eteona/http-message
in the below code snippet.
use Eteona\Http\Message\ServerRequestFactory;
use Psr\Container\ContainerInterface;
use Eteona\Http\Server\CallableRequestHandler;
use Eteona\Http\Message\ResponseFactory;
use Eteona\Http\Server\LazyRequestHandler;
use Eteona\Http\Server\QueueableRequestHandler;
$request = (new ServerRequestFactory())->createServerRequest('GET', 'https://example.com/');
/** @var ContainerInterface */
$container = /** A PSR-11 container implementation */;
// creates a response from a callback function.
$requestHandler = new CallableRequestHandler(function () {
return (new ResponseFactory())->createResponse(400);
});
$response = $requestHandler->handle($request);
// creates a response using a PSR-11 container implementation.
$requestHandler = new LazyRequestHandler($container, Acme\FooHandler::class);
$response = $requestHandler->handle($request);
// creates a response from a fallback request handler and a queue of middlewares.
$requestHandler = new QueueableRequestHandler(new Acme\FooHandler());
$requestHandler->add(new Acme\FooMiddleware());
$response = $requestHandler->handle($request);
Testing
$ composer test
Changelog
Please see the changelog for change details.
Contributing
Please see the contributing guide for details.
Credits
License
The package is an open-sourced software licensed under the BSD-3-Clause License.