首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在自定义请求类中自定义验证后重定向

如何在自定义请求类中自定义验证后重定向
EN

Stack Overflow用户
提问于 2018-12-01 05:39:07
回答 2查看 66关注 0票数 0

我创建了自定义请求类,其中我禁止访问特定的路由。假设我试图禁止通过这个请求类删除一些自定义类别。一切正常,我被重定向到403页。问题是,我如何定制重定向路径?

我浏览了互联网,看到了提到forbiddenResponse()方法,但我不能设法让它工作。

我使用的是Laravel 5.7

EN

回答 2

Stack Overflow用户

发布于 2018-12-01 09:24:34

如果您正在使用命名路由,如

代码语言:javascript
复制
Route::get("/user", "UserController@index")->name('user');

然后你就可以这样做了。

代码语言:javascript
复制
return redirect()->route('user');
票数 0
EN

Stack Overflow用户

发布于 2018-12-01 20:20:24

我找到了一些关于这方面的信息。从Laravel 5.4开始,forbiddenResponse函数已被删除。

通过更改位于App\Exceptions文件夹中的Handler.php文件,我成功地完成了所需的操作。在render函数中,我检查Exception是否为AuthorizationException,然后重定向到另一个页面。

代码语言:javascript
复制
public function render($request, Exception $exception)
    {
        if ($exception instanceof \Illuminate\Auth\Access\AuthorizationException) {
            return response()->redirectTo(route('categories.index'));
        }
        return parent::render($request, $exception);
    }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53565259

复制
相关文章

相似问题

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