php – 如何在Symfony2中创建禁止响应?

前端之家收集整理的这篇文章主要介绍了php – 如何在Symfony2中创建禁止响应?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我刚刚发现SensioLabsInsight,发现非常 interesting tips如何编写好的代码.如果有一些解释为什么(或为什么)不应该使用某些东西,即使是退出和死亡的基本东西也是如此.这将帮助我解释与我合作的人的事情.

所以我的问题是专门为AccessDeniedHttpException – 它说:

Symfony applications should not throw AccessDeniedHttpException

那么如何从应用程序控制器或EventListener返回403 Forbidden?
最好的做法是什么?

说实话我以为会是

throw new AccessDeniedHttpException()

因为404你有

throw $this->createNotFoundException()

但是看起来我错了.

我认为这意味着你必须抛出 AccessDeniedException而不是直接抛出AccessDeniedHttpException.

主要原因是在Symfony\Component\Security\Http\Firewall\ExceptionListener中,AccessDeniedException被事件监听器捕获,然后可以使用它进行一些操作.检查onKernelException函数.

猜你在找的PHP相关文章