首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Laravel权限不重定向未经授权的用户登录页面

Laravel权限不重定向未经授权的用户登录页面
EN

Stack Overflow用户
提问于 2021-06-19 05:41:56
回答 1查看 1.5K关注 0票数 1

我使用的是spatie/laravel-permission,当未授权的用户查看私有页面时,laravel显示了403个错误,但我希望laravel将他们重定向到login page,登录后自动重定向到私有页面。

例如,没有授权的用户想要转到/admin,.i想要在成功登录后将他重定向到/login页面,然后将他重定向到/admin。

Laravel版本5.7

EN

回答 1

Stack Overflow用户

发布于 2021-06-19 14:52:21

根据spatie/laravel-permission文档,您可以看到它抛出了一些可以在代码中处理的特定异常。在这里你可以找到所有的例外。链接

因此,根据您的问题,您需要处理UnauthorizedException

app/Exceptions/Handler中添加以下代码:

代码语言:javascript
复制
public function register()
{
    $this->renderable(function (\Spatie\Permission\Exceptions\UnauthorizedException $e, $request) {
        return response()->json([
            'responseMessage' => 'You do not have the required authorization.',
            'responseStatus'  => 403,
        ]);
    });
}

这将返回一个JSON响应,如果要将用户返回到登录页面,可以将其更改为:

代码语言:javascript
复制
return redirect()->route('login');
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68043986

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档