变更
This commit is contained in:
+25
-10
@@ -166,21 +166,36 @@ class RouterCollector implements \ArrayAccess, \IteratorAggregate
|
|||||||
public function registerMiddleware(string $class, string $method): void
|
public function registerMiddleware(string $class, string $method): void
|
||||||
{
|
{
|
||||||
$middlewares = Kiri::service()->get('request')->middlewares;
|
$middlewares = Kiri::service()->get('request')->middlewares;
|
||||||
$middlewares = [...$middlewares, ...array_column($this->groupTack, 'middleware')];
|
|
||||||
if (count($middlewares) > 0) {
|
if (count($middlewares) > 0) {
|
||||||
$manager = Kiri::getDi()->get(Middleware::class);
|
$this->appendMiddleware($middlewares, $class, $method);
|
||||||
foreach ($middlewares as $middleware) {
|
}
|
||||||
if (is_string($middleware)) {
|
$middlewares = array_column($this->groupTack, 'middleware');
|
||||||
$middleware = [$middleware];
|
if (count($middlewares) > 0) {
|
||||||
}
|
$this->appendMiddleware($middlewares, $class, $method);
|
||||||
foreach ($middleware as $value) {
|
|
||||||
$manager->set($class, $method, $value);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param array $middlewares
|
||||||
|
* @param $class
|
||||||
|
* @param $method
|
||||||
|
* @return void
|
||||||
|
* @throws
|
||||||
|
*/
|
||||||
|
private function appendMiddleware(array $middlewares, $class, $method): void
|
||||||
|
{
|
||||||
|
$manager = Kiri::getDi()->get(Middleware::class);
|
||||||
|
foreach ($middlewares as $middleware) {
|
||||||
|
if (is_string($middleware)) {
|
||||||
|
$middleware = [$middleware];
|
||||||
|
}
|
||||||
|
foreach ($middleware as $value) {
|
||||||
|
$manager->set($class, $method, $value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param string $path
|
* @param string $path
|
||||||
* @param string $method
|
* @param string $method
|
||||||
|
|||||||
Reference in New Issue
Block a user