我已经设置了Laravel 5.5并安装了默认的身份验证脚手架。
我的应用程序有两种类型的用户 - 客户和员工 - 所以我更喜欢用这种方式命名身份验证保护,并且以下配置似乎有效。
'guards' => [
'web' => [
'driver' => 'session',
'provider' => 'users',
],
'customers' => [
'driver' => 'session',
'provider' => 'customer-users',
],
'staff' => [
'driver' => 'session',
'provider' => 'staff-users',
],
'api' => [
'driver' => 'token',
'provider' => 'users',
],
我的提供商,客户用户和员工用户使用标准的雄辩驱动程序,但他们每个都返回不同的用户类型。
问题在于我想删除'web'防护,因为它只是混乱了配置文件。然而,当我这样做时,我在Laravel中间件的某个地方得到了一个例外。
当然,我可以忍受更多的混乱,但是Laravel依赖于我无法改变的配置项确实让我感到困扰。这可能是一个Laravel的错误吗?
BTW - 当我收到错误时,我没有将'web'设置为默认保护......
答案 0 :(得分:1)
默认情况下,由laravel提供的 web 保护,用于基于"-"
驱动程序和表session
的Web身份验证。现在您已经创建了自己的自定义防护,并且您正在使用它。所以你希望保留users
。但如果你删除,你可能会面临一些内部问题,所以最好保留它,它也不会成为性能问题。