【发布时间】:2020-07-20 06:57:53
【问题描述】:
我正在 AuthServiceProvider 中为我的 API 服务定义我的 Gates(遵循 Laravel 文档https://laravel.com/docs/7.x/authorization#gates):
Gate::define('view-users', function ($user) {
return $user->hasAccess(['view-users'])
or $user->inRole(['admin', 'operator']);
});
这是我的路线:
Route::group(['namespace' => 'Api', 'middleware' => ['auth:api']], function () {
Route::get('/users', 'UserController@listing')->name('user.listing')->middleware(['can:view-users']);
});
如何从 Route API 文件中找到获取用户以在 Gate 中使用?
但我不完全明白这个$user 的来源。在我的请求中,我发送了一个授权承载令牌。我应该在我的门内使用它从数据库中获取正确的用户吗? Laravel 怎么知道$user 是谁?
【问题讨论】: