我正在尝试在通常的用户身份验证之上实施域范围身份验证(DWA)。用例是为了防止进行中的网站泄漏到google / public。
php artisan make:auth
创建的脚手架代码/login
登录并重定向到显示默认/home
的{{1}} You are logged in!
时,我发现/home
中的$this->session->id
具有一个ID值,我将其称为A,会话中也有5个SessionGuard.php
。 / li>
attributes
中间件插入路由auth
中并加载/product/{id}
中的$this->session->id
具有一个全新的ID,其ID为0 SessionGuard.php
attributes
中间件中的authenticate()
抛出Authenticate.php
异常并将我重定向到Unauthenticated
/login
时,/login
中的$this->session->id
现在显示A的ID,其中前5个SessionGuard.php
attributes
导致/login
中间件运行并重定向到RedirectIfAuthenticated.php
/home
,它只是一直将我重定向到/product/{id}
我的问题是,为什么#5显示一个新的会话ID而不是A? 首先从何处导出此ID?
谢谢!
答案 0 :(得分:0)
我找到了解决方法Problems of routes in own package- Laravel 5.6
这是由于我的控制器仅具有auth
但缺少web
中间件。希望对别人有帮助。