为了修改响应缓存控制标头,我使用kernel.response事件。但是当我的监听器被调用时,controllers@cache注释还没有执行。如何确保在执行完所有控制器注释后调用我的侦听器?
您可以通过设置优先级来更改同一事件上侦听器的顺序。正如您在SensioFrameworkExtraBundle的HttpCacheListener
中看到的,没有明确的优先级集。这意味着它具有默认优先级0
。因此,您可以将优先级设置为高于0
的任何数字(我建议10
或类似数字),以便在之前执行它
services:
my_cache_listener:
class: ...
tags:
- { name: kernel.event_listener, event: kernel.response, priority: 10 }