talesoft/tale-http-runtime

A basic, PSR-7 compatible HTTP runtime based on middlewares

Installs: 161

Dependents: 3

Suggesters: 0

Security: 0

Stars: 0

Watchers: 3

Forks: 0

Open Issues: 0

pkg:composer/talesoft/tale-http-runtime

0.1 2016-03-01 19:39 UTC

This package is auto-updated.

Last update: 2025-09-10 10:13:37 UTC


README

A Tale Framework Component

What is Tale Http Runtime?

It is PSR-7 compliant

Installation

Install via Composer

composer require "talesoft/tale-http-runtime:*"
composer install

Usage

class HelloMiddleware implements MiddlewareInterface
{

    public function __invoke(
        ServerRequestInterface $request,
        ResponseInterface $response,
        callable $next
    )
    {
        $response->getBody()->write('Hello ');

        return $next($request, $response);
    }
}

class WorldMiddleware implements MiddlewareInterface
{

    public function __invoke(
        ServerRequestInterface $request,
        ResponseInterface $response,
        callable $next
    )
    {
        $response = $next($request, $response);
        $response->getBody()->write('World!');
        return $response;
    }
}

class FuckingMiddleware implements MiddlewareInterface
{

    public function __invoke(
        ServerRequestInterface $request,
        ResponseInterface $response,
        callable $next
    )
    {
        $response->getBody()->write('fucking ');
        return $next($request, $response);
    }
}


$queue = new Queue();
$queue->append(new HelloMiddleware())
      ->append(new WorldMiddleware())
      ->append(new FuckingMiddleware());

Runtime::emit($queue); //(Output) "Hello fucking World!"