首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >RedirectIfAuthenticated.php是如何工作的?

RedirectIfAuthenticated.php是如何工作的?
EN

Stack Overflow用户
提问于 2018-06-11 08:26:35
回答 1查看 964关注 0票数 2

我在Laravel5.6中运行了php artisan make:auth,因为众所周知,它生成了一个HomeController.php文件。

在这里面:

public function index(){ return view('home'); }

Route::get('/home', 'HomeController@index')->name('home');路由定义到web.php中。

但是由于RedirectIfAuthenticated.php中间件,http://homestead.test/home URI重定向到http://homestead.test/login。因此,尽管RedirectIfAuthenticated.php是在Kernel.php$routeMiddleware属性中定义的,但它作为全局中间件工作,而不是路由中间件。

这一切为什么要发生?

我还有什么不知道的?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-11 08:35:59

如果您查看创建的控制器的构造函数,就会发现它使用的是auth中间件。

$this->middleware('auth');

如果你在$routeMiddleware上查看你的Kernel.php

'auth' => \Illuminate\Auth\Middleware\Authenticate::class,

这根本不涉及RedirectIfAuthenticated。这会将任何已通过身份验证的用户重定向到某个路由之外。auth中间件将所有未通过身份验证的用户重定向到“登录”路由。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50789200

复制
相关文章

相似问题

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