在kernel.request中重置_controller

时间:2017-07-23 17:30:23

标签: symfony symfony-3.2

我已经实现了 onKernelRequest 处理程序:

class RequestSubscriber implements EventSubscriberInterface
{

    public static function getSubscribedEvents ()
    {
        return array (
          KernelEvents::REQUEST => [array ('onKernelRequest', 5000)]
        );
    }

    public function onKernelRequest (GetResponseEvent $event)
    {
        $request = $event->getRequest();
        $request->attributes->set('_controller', 'TestBundle:Display:index');
    }

}

为了简洁起见,我删除了检查控制器是否应该被覆盖的条件测试。

这是有效的 - 除了调试工具栏现在没有显示 - 我假设现在所有其他的侦听器/订阅者和kernel.controller都被规避了吗?

如果我做了kernel.controller事件,这会更好吗?作为具有更高优先级的最后一个处理程序?

0 个答案:

没有答案