Framework/src/Http/Middleware/Middleware.php

22 lines
718 B
PHP
Raw Normal View History

<?php
declare(strict_types=1);
namespace Phred\Http\Middleware;
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Server\MiddlewareInterface;
use Psr\Http\Server\RequestHandlerInterface;
abstract class Middleware implements MiddlewareInterface
{
abstract public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface;
protected function json(array $data, int $status = 200): ResponseInterface
{
$response = new \Nyholm\Psr7\Response($status, ['Content-Type' => 'application/json']);
$response->getBody()->write(json_encode($data, JSON_UNESCAPED_SLASHES));
return $response;
}
}