gpt4 book ai didi

php - 如何在 Symfony2 中抛出 403 异常?

转载 作者:IT王子 更新时间:2023-10-28 23:49:35 25 4
gpt4 key购买 nike

我正在检查我的请求 URI 中是否有特定 token ,如果没有 token 或 token 错误,则抛出 Symfony\Component\Security\Core\Exception\AccessDeniedException

if(!isset($token) && $token != 'whatever') {
throw new AccessDeniedException('No token given or token is wrong.');
}

但是当我使用此AccessDeniedException 时,Symfony2 只是重定向到登录页面。相反,我想要一个专用的 403 错误页面(我已经创建了 app/Resources/TwigBundle/views/Exceptions/error403.html.twig 文件)。

为了实现这一点,我必须改变什么?我必须使用 PHP native 异常吗?但是我怎么知道要传递 403 错误代码呢?

Symfony2 是否可能有一个特定的 403 异常,它不会简单地重定向到登录?

最佳答案

抛出 Symfony\Component\HttpKernel\Exception\AccessDeniedHttpException

这将绕过安全系统并给你一个 403 响应,而该响应又会被 twig 异常监听器拾取。

关于php - 如何在 Symfony2 中抛出 403 异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21932229/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com