Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/244.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
Php symfony验证路由是否被授予/评估return REDIRECTOROUTE语句_Php_Security_Symfony_Redirect_Try Catch - Fatal编程技术网

Php symfony验证路由是否被授予/评估return REDIRECTOROUTE语句

Php symfony验证路由是否被授予/评估return REDIRECTOROUTE语句,php,security,symfony,redirect,try-catch,Php,Security,Symfony,Redirect,Try Catch,我有一个symfony2控制器,我想在其中执行以下操作: try { return $this->redirect($request->headers->get('referer')); } catch (Exception $e) { return $this->redirectToRoute('home'); } 它不起作用。其思想是,给定此控制器中发生的情况,用户的权限可能会更改。所以我想知道他是否仍然可以访问当前路径,如果是,重定向到当前路径,如

我有一个symfony2控制器,我想在其中执行以下操作:

try {
    return $this->redirect($request->headers->get('referer'));
}
catch (Exception $e) {
    return $this->redirectToRoute('home');
}
它不起作用。其思想是,给定此控制器中发生的情况,用户的权限可能会更改。所以我想知道他是否仍然可以访问当前路径,如果是,重定向到当前路径,如果不是,重定向到主页

我该怎么做


非常感谢

我看不出有什么好办法。问题是,您需要询问整个安全组件,它使用requestlistners拒绝访问。不幸的是,Accesstoken只生成一次,因此如果您再次询问requestlistners,它将不会使用新的用户权限


最好的办法可能是进行重定向,然后捕获真正发生的异常(使用exceptionListener),然后进行重定向

回答:此处显示的代码是否与您提出的问题相关?似乎不太可能。关于访问地图的第二个链接值得研究。没有时间yetYou可能不得不这样做:第一个是在这个链接上(已经给了vu@kapa89第二个选项是创建一个手动检查的链接),这就是我最后要做的…简单得多