如果请求是资产路由,我需要知道onKernelRequest eventListener。
我该怎么做?我对这个听众很热情:
public function onKernelRequest(GetResponseEvent $event)
{
if (!$event->isMasterRequest()) {
return;
}
// Here i need check if the request owns to an assetic
if ($this->authorizationChecker->isGranted('ROLE_USER'))
{
// do something...
}
else
{
}
}
答案 0 :(得分:1)
看起来由assetic生成的路由始终包含根据AsseticLoader第116行的字符串'_assetic_'
。因此,您应该检查匹配的路由是否包含该字符串。 e.g:
// in your listener:
// return from the listener if this as an assetic route
if ( strpos($event->getRequest()->attributes->get('_route'), 'assetic') !== false)
return;