为了修改响应缓存控制头,我使用了kernel.response事件。 但是当我的监听器被调用时,控制器@cache注释尚未执行。如何在执行所有控制器注释后确保调用我的侦听器?
答案 0 :(得分:1)
您可以通过设置优先级来更改同一事件的侦听器顺序。正如您在SensioFrameworkExtraBundle的HttpCacheListener
中看到的那样,没有明确的优先级设置。这意味着它的默认优先级为0
。因此,您可以将优先级设置为高于0
的任何数字(我建议10
等),然后再执行此操作:
services:
my_cache_listener:
class: ...
tags:
- { name: kernel.event_listener, event: kernel.response, priority: 10 }