Корректно ли прерывать middleware pipe в таком случае?

Нужно внедрить в сайт режим обслуживания.
Решил сделать его через middleware.
Терзают сомнения, логично ли так делать? Или можно как-то корректнее это делать?
class Maintenance implements MiddlewareInterface
{
    private $renderer;

    public function __construct(TemplateRendererInterface $renderer)
    {
        $this->renderer = $renderer;
    }

    public function process(
        ServerRequestInterface $request, 
        RequestHandlerInterface $handler
    ) : ResponseInterface
    {
        /*
         * Тут будет дополнительная проверка на текущий роут и авторизацию.
         * Для авторизованных пользователей,
         * а так же для роута логина будет передавать управление далее по пайпу
         */
        return new HtmlResponse($this->renderer->render(
            'site::maintenance',
            []
        ), 503, ['Retry-After' => '3600']);
    }
}
  • Вопрос задан
  • 92 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы