当我使用auth api gaurd登出路由时。我正面临以下异常
未定义身份验证防护[:api]
我已经实现了注册登录Apis,但是我遇到了我使用auth :: api保护过的注销api的错误
config.auth文件
'guards' => [
'web' => [
'driver' => 'session',
'provider' => 'users',
],
'api' => [
'driver' => 'passport',
'provider' => 'users',
],
],
api.php
Route::group(['prefix'=>'auth'],function(){
Route::post('login','AuthController@login');
Route::post('signup','AuthController@signup');
Route::group(['middleware' => 'auth::api'], function () {
Route::get('logout','AuthController@logout');
Route::get('user','AuthController@user');
});
});
我应该可以注销用户
答案 0 :(得分:0)
您的代码中有一个多余的冒号,这就是为什么它试图找到保护clearTimeout(timeouts[clientUsername]);
的原因。
根据docs:
在通过以下方式定义路由时可以指定中间件参数 用:分隔中间件名称和参数。多 参数应以逗号分隔:
:api
因此,您的情况应该是:
Route::put('post/{id}', function ($id) {
//
})->middleware('role:editor');