This commit is contained in:
2025-12-30 20:03:40 +08:00
parent 1b08ae2be3
commit 05d3110522
+13 -3
View File
@@ -8,6 +8,7 @@ namespace Kiri\Router;
use Closure;
use Kiri\Router\Base\NotFoundController;
use Kiri\Router\Constrict\RequestMethod;
use Psr\Http\Server\MiddlewareInterface;
use ReflectionException;
use Throwable;
use Traversable;
@@ -232,11 +233,20 @@ class RouterCollector implements \ArrayAccess, \IteratorAggregate
$attributes = $reflect->getMethod($method)->getAttributes(Annotate\Middleware::class);
foreach ($attributes as $attribute) {
if (!in_array($attribute->getName(), $response)) {
$response[] = $attribute->getName();
/** @var Annotate\Middleware $instance */
$instance = $attribute->newInstance();
$data = $instance->middleware;
if (is_string($data)) {
$data = [$data];
}
foreach ($data as $middleware) {
if (!in_array($middleware, $response)) {
$response[] = $middleware;
}
}
}
return $response;
}