<?php declare(strict_types=1); namespace App\Middleware; use Psr\Container\ContainerInterface; use Psr\Http\Message\ResponseInterface; use Psr\Http\Server\MiddlewareInterface; use Psr\Http\Message\ServerRequestInterface; use Psr\Http\Server\RequestHandlerInterface; use Psr\Log\LoggerInterface; class RequestLoggerMiddleware implements MiddlewareInterface { protected LoggerInterface $logger; public function __construct(LoggerInterface $logger) { $this->logger = $logger; } public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface { var_dump("----------------------------------1------"); // 记录请求信息 $this->logger->info("Request received: " . json_encode([ 'uri' => (string) $request->getUri(), 'method' => $request->getMethod(), 'headers' => $request->getHeaders(), 'body' => $request->getBody()->getContents(), ])); // 重置请求体流指针 // $request->getBody()->rewind(); return $handler->handle($request); } }