diff --git a/src/Middleware/SpParseMiddleware.php b/src/Middleware/SpParseMiddleware.php new file mode 100644 index 0000000..826676e --- /dev/null +++ b/src/Middleware/SpParseMiddleware.php @@ -0,0 +1,32 @@ + + * Powered by PhpStorm + * Created on 2025/7/9 + */ +declare(strict_types=1); + +namespace Singularity\HDK\Core\Middleware; + +use Hyperf\Context\Context; +use Psr\Http\Message\ResponseInterface; +use Psr\Http\Message\ServerRequestInterface; +use Psr\Http\Server\MiddlewareInterface; +use Psr\Http\Server\RequestHandlerInterface; + +final class SpParseMiddleware implements MiddlewareInterface +{ + + public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface + { + $sp = $request->getHeaderLine('X-SP-ID'); + if (!empty($sp)) { + Context::set('sp', $sp); + } + + return $handler->handle($request); + } +} \ No newline at end of file