Php 如何在ajax请求后更新调试工具栏?
按照上的说明,可以在每个ajax请求上更新调试工具栏:Php 如何在ajax请求后更新调试工具栏?,php,ajax,symfony,symfony5,Php,Ajax,Symfony,Symfony5,按照上的说明,可以在每个ajax请求上更新调试工具栏: use Symfony\Component\HttpKernel\Event\ResponseEvent; // ... public function onKernelResponse(ResponseEvent $event) { if (!$this->getKernel()->isDebug()) { return; } $request = $event->g
use Symfony\Component\HttpKernel\Event\ResponseEvent;
// ...
public function onKernelResponse(ResponseEvent $event)
{
if (!$this->getKernel()->isDebug()) {
return;
}
$request = $event->getRequest();
if (!$request->isXmlHttpRequest()) {
return;
}
$response = $event->getResponse();
$response->headers->set('Symfony-Debug-Toolbar-Replace', 1);
}
不幸的是,所描述的代码功能不全:$this->getKernel()->isDebug()
创建异常,因为getKernel()
不是EventSubscriber
的方法
可以在ResponseEvent
对象上调用getKernel()
,但它返回一个HTTPKernel
对象,该对象没有isDebug()
方法
如何确定在EventSubscriber
中是否启用了调试工具栏