<?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 Hyperf\DbConnection\Db;
use Hyperf\Utils\Context;
use Hyperf\HttpMessage\Stream\SwooleStream;
use \Hyperf\HttpServer\Contract\RequestInterface;
class ApiSignMiddleware implements MiddlewareInterface
{
/**
* @var ContainerInterface
*/
protected $container;
/**
* @var RequestInterface
*/
protected $serverRequest;
public function __construct(ContainerInterface $container, RequestInterface $serverRequest) {
$this->container = $container;
$this->serverRequest = $serverRequest;
}
public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface {
$empObj = \App\Utils\Util::build_empty_object();
$response = Context::get(ResponseInterface::class);
$serverParams = $request->getServerParams();
$queryString = (isset($serverParams['query_string'])) ? $serverParams['query_string'] : '';
(!empty($queryString)) && $queryString = strtolower($queryString);
$uri = (isset($serverParams['request_uri'])) ? $serverParams['request_uri'] : '';
//var_dump($uri);
if (empty($uri)) {
return $handler->handle($request);
Hyperf自定义中间件之API签名认证
最新推荐文章于 2024-09-20 21:48:23 发布