Download the PHP package danielspk/tornadohttp without Composer
On this page you can find all versions of the php package danielspk/tornadohttp. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download danielspk/tornadohttp
More information about danielspk/tornadohttp
Files in danielspk/tornadohttp
Package tornadohttp
Short Description Middleware Container PSR-15
License MIT
Homepage https://github.com/danielspk/TornadoHttp/
Informations about the package tornadohttp
TORNADO HTTP
TORNADO HTTP es un handler de middlewares PSR-15
Documentación:
La siguiente documentación le enseñará el uso de Tornado Http.
Instalación:
Se recomienda instalar esta librería mediante el uso de Composer de la siguiente forma:
Esto instalará Tornado HTTP y creará o actualizará el archivo composer.json
con la siguiente dependencia:
Crear el contenedor de aplicación:
Tornado Http puede construirse de varias formas:
Sin parámetros:
Con una cola de Middlewares
Nota: Puede ver que hay cuatro formas de registrar un Middleware: a) instancia de MiddlewareInterface, b) string con referencia a un servicio del container, c) string con referencia de namespace de clase y d) string con referencia de clase y array con parámetros de constructor. Más adelante se explicará en detalle cada una de estas formas.
Con una Respuesta por defecto
Con un Contenedor de Servicios
Nota: El contenedor de servicios a utilizar debe respetar el estándar PSR-11.
Con un Resolver de Middleware personalizado
Con un Entorno de Ejecución
Cola de Middlewares:
Tornado Http permite registrar middlewares de 3 formas distintas:
- mediante su
constructor
- mediante el método
add()
- mediante el método
addList()
Ejemplos:
Tornado Http dispone de una clase propia que resuelve automáticamente como ejecutar un middleware registrado.
Existen cuatro formas por defecto de registrar middlewares en Tornado Http utilizando su Resolver:
- mediante una
instancia de clase
- mediante un
string
que hace referencia a unservicio
contenido en el Contenedor de Servicios - mediante un
string
que hace referencia un namespace de unaclase
- mediante un
array
Todos los middlewares deben implementar \Psr\Http\Server\MiddlewareInterface
.
Ejemplos:
Cada middleware puede ser registrado con los siguientes filtros de ejecución opcionales:
- Métodos HTTP permitidos
- Path URL
- Entornos de ejecución permitidos
Ejemplos:
Container Trait:
Tornado Http facilita un trait que puede ser utilizado dentro de los middlewares.
Cuando Tornado Http detecta que un middleware utiliza Container\ContainerTrait
inyecta automáticamente el contenedor
de servicios registrado en Tornado Http.
Se podrá acceder al contenedor de servicios, dentro del middleware, de la siguiente forma:
Custom Resolver:
Tornado Http permite registrar un resolver de middlewares personalizado. De esta forma puede reemplazar o extender el uso de las cuatro formas mencionadas para registrar middlewares.
Ejemplo:
Resumen de Interfaces/Traits/Clases y Métodos:
DMS\TornadoHttp\TornadoHttp
Método | Detalle |
---|---|
__construct(array = [], ResponseInterface = null, ContainerInterface = null, ResolverInterface = null, string = 'dev') | Crea una instancia de Tornado Http |
handle(ServerRequestInterface) : ResponseInterface | Ejecución de handlers |
add(mixed, string = null, array = null, array = null, int = null) | Agrega un Middleware a la cola |
addList(array) | Agrega una lista de Middlewares a la cola |
getMiddlewareIndex() : int | Devuelve el índice actual de la cola de Middlewares |
setDI(ContainerInterface) : TornadoHttp | Asigna un contenedor de servicios |
getDI() : ContainerInterface | Recupera el contenedor de servicios asignado |
setResponse(ResponseInterface) : TornadoHttp | Asigna una respuesta por defecto |
getResponse() : ResponseInterface | Recupera la respuesta del último middleware ejecutado |
setContext(mixed) : TornadoHttp | Asigna un contexto compartido |
getContext() : mixed | Recupera un contexto compartido |
setResolver(ResolverInterface) : TornadoHttp | Asigna un resolver de middlewares |
setEnvironment(string) : TornadoHttp | Asigna el entorno de ejecución |
resolveMiddleware(mixed) : MiddlewareInterface | Resuelve y ejecuta un Middleware |
DMS\TornadoHttp\Container\ContainerTrait
Método | Detalle |
---|---|
setContainer(ContainerInterface) : self | Asigna un contenedor de servicios |
getContainer() : ContainerInterface | Recupera el contenedor de servicios asignado |
DMS\TornadoHttp\Container\InjectContainerInterface
Método | Detalle |
---|---|
setContainer(ContainerInterface) | Asigna un contenedor de servicios |
getContainer() : ContainerInterface | Recupera el contenedor de servicios asignado |
DMS\TornadoHttp\Middleware\Middleware
Método | Detalle |
---|---|
setContainer(ContainerInterface) : Middleware | Asigna un contenedor de servicios |
getContainer() : ContainerInterface | Recupera el contenedor de servicios asignado |
DMS\TornadoHttp\Resolver\Resolver
Método | Detalle |
---|---|
__construct(ContainerInterface = null) | Crea una instancia del resolver |
solve(MiddlewareInterface|string|array) : MiddlewareInterface | Resuelve un middleware |
DMS\TornadoHttp\Resolver\ResolverInterface
Método | Detalle |
---|---|
solve(MiddlewareInterface|string|array) : MiddlewareInterface | Resuelve un middleware |
Inspiración:
Licencia:
El proyecto se distribuye bajo la licencia MIT.
Sugerencias y colaboración:
Daniel Spiridione - http://daniel-spiridione.com.ar
All versions of tornadohttp with dependencies
psr/container Version ^1.0
psr/http-message Version ^1.0
psr/http-server-handler Version ^1.0
psr/http-server-middleware Version ^1.0