Symfony 5正在设置EventSubscriber优先级



我当前在设置eventsubscriber的优先级以根据查询参数设置区域设置时遇到问题。

这是我的服务项目

AppEventSubscriberLocaleSubscriber:
tags:
- { name: kernel.event_listener, event: kernel.request, priority: 101 }

如我发布的符号文件所示:

debug:event kernel.request

这表明订阅者的优先级仍然是20。我的应用程序的行为证实了这一点。

您需要使用EventSubscriber

示例:

class SampleEventSubscriber implements EventSubscriberInterface {
public static function getSubscribedEvents(): array {
return [
KernelEvents::REQUEST => ['onKernelRequest', 9999] // 9999 is priority
];
}
public funtion onKernelRequest(RequestEvent $request) {
// all logic on requests
}
}

然后在services.yaml中注册该订户

services:
AppEventsSampleEventSubscriber:
tags:
- { name: 'kernel.event_subscriber', method: 'onKernelRequest' }

最新更新