我目前正在使用Laravel護(hù)照,我可以驗(yàn)證是否有當(dāng)前令牌保存,該令牌返回以下json:localhost:8000/api/check{"id":"1c080ff73c6592b8e35630ae36f45f5042c04d9a9ed26a7fafc3793c606484b619ed8792be65a658","user_id":1,"client_id":5,"name":"Personal Access Tokens","scopes":["administrator"],...} 但是當(dāng)我嘗試為管理員使用中間件范圍時(shí),它會(huì)返回錯(cuò)誤localhost:8000/api/adminIlluminate\Contracts\Container\BindingResolutionException: 目標(biāo)類 [scope] 不存在。在文件中這是路由/api.phpRoute::group(['middleware' => 'auth:api'], function(){ Route::get('check', 'TeamController@check'); Route::group(['middleware' => 'scope:administrator'], function() { Route::get('admin', 'TeamController@index'); });});以下是 TeamController 上的相應(yīng)函數(shù).phppublic function check(Request $request) { return auth()->user()->token();}public function index(Request $request) { return auth()->user()->token();}有人知道我做錯(cuò)了什么嗎?
1 回答

四季花海
TA貢獻(xiàn)1811條經(jīng)驗(yàn) 獲得超5個(gè)贊
您很可能沒有注冊(cè)中間件。scope
“Passport 包括兩個(gè)中間件,可用于驗(yàn)證傳入的請(qǐng)求是否使用已授予給定范圍的令牌進(jìn)行身份驗(yàn)證。要開始使用,請(qǐng)將以下中間件添加到文件的屬性中:”
$routeMiddleware
app/Http/Kernel.php
'scopes'?=>?\Laravel\Passport\Http\Middleware\CheckScopes::class,'scope'?=>?\Laravel\Passport\Http\Middleware\CheckForAnyScope::class,
- 1 回答
- 0 關(guān)注
- 105 瀏覽
添加回答
舉報(bào)
0/150
提交
取消