# Посредники HttpSoft\Basis

Классы посредников пакета HttpSoft\Basis, реализующие Psr\Http\Server\MiddlewareInterface.

Все посредники содержат только один публичный метод Psr\Http\Server\MiddlewareInterface::process().

public function process(
    Psr\Http\Message\ServerRequestInterface $request, 
    Psr\Http\Server\RequestHandlerInterface $handler
): Psr\Http\Message\ResponseInterface;

# HttpSoft\Basis\Middleware\BodyParamsMiddleware

Если заголовок запроса Content-Type является application/json, application/*+json или application/x-www-form-urlencoded, этот посредник декодирует тело запроса и сделает его доступным из метода Psr\Http\Message\ServerRequestInterface::getParsedBody().

Если тело JSON-запроса невозможно декодировать, будет брошено исключение \JsonException.

Исходный код на GitHub.

# HttpSoft\Basis\Middleware\ContentLengthMiddleware

Автоматически устанавливает заголовок запроса Content-Length, если он не был установлен ранее и было определено тело запроса.

Исходный код на GitHub.