【发布时间】:2018-03-02 14:52:29
【问题描述】:
我为我的用户设置了一个 API 令牌,他们可以在访问 API 路由以返回其他数据时选择提供该令牌。
这是我的 auth.php 配置:
'defaults' => [
'guard' => 'web',
],
'guards' => [
'web' => [
'driver' => 'session',
'provider' => 'eloquent',
],
'api' => [
'driver' => 'token',
'provider' => 'eloquent',
],
],
我的代码中有各种(共享)位置,它们使用$request->user() 之类的检查而没有提供保护。问题是这总是使用默认的守卫。
但是,如果我将其中一个 API 路由设置为使用中间件 auth:api,那么它会按照我的预期默认使用 api 防护。但我无法真正设置它,因为正如我所提到的,身份验证是可选的,并且使用 auth 中间件使其成为强制性的。
我想知道是否有办法设置所有 API 路由,以便它们的默认保护是 API 保护。
【问题讨论】: