Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/svg/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Symfony2-在使用EventListener登录表单之前拦截请求_Symfony - Fatal编程技术网

Symfony2-在使用EventListener登录表单之前拦截请求

Symfony2-在使用EventListener登录表单之前拦截请求,symfony,Symfony,我有一个内核.request事件侦听器服务,它修改请求,但是它不会对表单登录处理的post请求执行。如何在SecurityBundle之前拦截请求?虽然从未尝试过,但优先级属性可能会有所帮助 还有一个附加的标记选项优先级是可选的,默认为0。 该值可以是-255到255,侦听器将按以下顺序执行 它们的优先级(从高到低)。当您需要保证 一个侦听器在另一个侦听器之前执行 Symfony\Component\Security\Http\Firewall似乎订阅了优先级为8的kernel.request

我有一个
内核.request
事件侦听器服务,它修改
请求
,但是它不会对
表单登录
处理的post请求执行。如何在
SecurityBundle
之前拦截请求?

虽然从未尝试过,但优先级属性可能会有所帮助

还有一个附加的标记选项优先级是可选的,默认为0。 该值可以是-255到255,侦听器将按以下顺序执行 它们的优先级(从高到低)。当您需要保证 一个侦听器在另一个侦听器之前执行

Symfony\Component\Security\Http\Firewall似乎订阅了优先级为8的kernel.request,因此任何大于该优先级的操作都应该有效

那么,像这样试试吧

# config.yml
services:
    kernel.listener.your_listener_name:
        class: Acme\DemoBundle\EventListener\AcmeRequestListener
        tags:
            - { name: kernel.event_listener, event: kernel.request, method: onKernelRequest, priority: 100 }

可能重复:谢谢!我会试试看,然后告诉你。