This commit is contained in:
2021-08-19 10:57:45 +08:00
parent d2731aa8b9
commit 32d4d0f820
8 changed files with 40 additions and 17 deletions
+1 -1
View File
@@ -9,7 +9,7 @@ use Http\Route\MiddlewareManager;
use ReflectionException;
use Kiri\Exception\NotFindClassException;
use Kiri\Kiri;
use Http\IInterface\Middleware as IMiddleware;
use Http\IInterface\MiddlewareInterface as IMiddleware;
/**
* Class Middleware
+1 -1
View File
@@ -34,7 +34,7 @@ namespace App\Http\Middleware;
use Closure;
use Http\Context\Request;
use Http\IInterface\Middleware;
use Http\IInterface\MiddlewareInterface;
';
+2 -2
View File
@@ -8,7 +8,7 @@ namespace Kiri\Jwt;
use Closure;
use Exception;
use Http\Context\Request;
use Http\IInterface\Middleware;
use Http\IInterface\MiddlewareInterface;
use Server\RequestInterface;
use Kiri\Kiri;
@@ -17,7 +17,7 @@ use Kiri\Kiri;
* @package Kiri\Kiri\Route
* 跨域中间件
*/
class JWTAuthMiddleware implements Middleware
class JWTAuthMiddleware implements MiddlewareInterface
{
@@ -6,21 +6,21 @@ namespace Http\IInterface;
use Closure;
use Http\Context\Request;
use Server\RequestInterface;
/**
* Interface IMiddleware
* @package Kiri\Kiri\Route
*/
interface Middleware
interface MiddlewareInterface
{
/**
* @param Request $request
* @param RequestInterface $request
* @param Closure $next
* @return mixed
*/
public function onHandler(Request $request, Closure $next): mixed;
public function onHandler(RequestInterface $request, Closure $next): mixed;
}
+2 -4
View File
@@ -10,7 +10,7 @@ use Exception;
use Http\Context\Context;
use Http\Context\Request;
use Http\Context\Response;
use Http\IInterface\Middleware;
use Http\IInterface\MiddlewareInterface;
use Server\RequestInterface;
use Kiri\Kiri;
@@ -19,12 +19,10 @@ use Kiri\Kiri;
* @package Kiri\Kiri\Route
* 跨域中间件
*/
class CoreMiddleware implements Middleware
class CoreMiddleware extends MiddlewareAbstracts
{
/** @var int */
public int $zOrder = 0;
/**
+25
View File
@@ -0,0 +1,25 @@
<?php
namespace Http\Route;
use Http\IInterface\MiddlewareInterface;
/**
*
*/
abstract class MiddlewareAbstracts implements MiddlewareInterface
{
/** @var int */
protected int $priority = 0;
/**
* @return int
*/
public function getPriority(): int
{
return $this->priority;
}
}
+3 -3
View File
@@ -5,7 +5,7 @@ namespace Http\Route;
use Closure;
use Http\IInterface\Middleware;
use Http\IInterface\MiddlewareInterface;
use Kiri\Abstracts\BaseObject;
@@ -77,7 +77,7 @@ class MiddlewareManager extends BaseObject
}
return array_reduce(array_reverse($middlewares), function ($stack, $pipe) {
return function ($passable) use ($stack, $pipe) {
if ($pipe instanceof Middleware) {
if ($pipe instanceof MiddlewareInterface) {
return $pipe->onHandler($passable, $stack);
}
return call_user_func($pipe, $passable, $stack);
@@ -95,7 +95,7 @@ class MiddlewareManager extends BaseObject
{
return array_reduce(array_reverse($middlewares), function ($stack, $pipe) {
return function ($passable) use ($stack, $pipe) {
if ($pipe instanceof Middleware) {
if ($pipe instanceof MiddlewareInterface) {
return $pipe->onHandler($passable, $stack);
}
return call_user_func($pipe, $passable, $stack);
+2 -2
View File
@@ -10,7 +10,7 @@ use Http\Controller;
use Http\Exception\RequestException;
use Http\Context\Request;
use Http\Context\Response;
use Http\IInterface\Middleware;
use Http\IInterface\MiddlewareInterface;
use Http\IInterface\RouterInterface;
use JetBrains\PhpStorm\Pure;
use ReflectionException;
@@ -347,7 +347,7 @@ class Router extends HttpService implements RouterInterface
return $value;
}
$value = Kiri::createObject($value);
if (!($value instanceof Middleware)) {
if (!($value instanceof MiddlewareInterface)) {
return null;
}
return [$value, 'onHandler'];