У меня есть 2 группы маршрутов (web и api):
Вот пример веб-маршрутов:
return function (Application $app, MiddlewareFactory $factory, ContainerInterface $container): void {
$app->get('/', [
Zend\Expressive\Session\SessionMiddleware::class,
Zend\Expressive\Flash\FlashMessageMiddleware::class,
User\Service\Auth\TemplateAuthMiddleware::class,
Dev\Handler\IndexPageHandler::class
], 'home');
$app->route('/auth/login', [
Zend\Expressive\Session\SessionMiddleware::class,
Zend\Expressive\Flash\FlashMessageMiddleware::class,
User\Service\Auth\OnlyForGuestsMiddleware::class,
User\Service\Auth\TemplateAuthMiddleware::class,
User\Handler\LoginPageHandler::class
], ['GET', 'POST'], 'auth.login');
$app->route('/auth/register', [
Zend\Expressive\Session\SessionMiddleware::class,
Zend\Expressive\Flash\FlashMessageMiddleware::class,
User\Service\Auth\OnlyForGuestsMiddleware::class,
User\Service\Auth\TemplateAuthMiddleware::class,
User\Handler\ResetPageHandler::class
], ['GET', 'POST'], 'auth.register');
...
};
Я заметил, что многие промежуточные программы повторяются.Я хочу сгруппировать промежуточное программное обеспечение.Например:
'web' => [
Zend\Expressive\Session\SessionMiddleware::class,
Zend\Expressive\Flash\FlashMessageMiddleware::class,
User\Service\Auth\TemplateAuthMiddleware::class,
]
Я знаю, что Zend-Expressive не поддерживает группы Widware, такие как laravel5.Есть ли для этого прекрасное решение для группировки?