0

我有守卫“管理员”。

我如何知道在 Laraver Guard 中作为多重身份验证工作(我可以同时以用户和管理员身份登录)。

但是当我以管理员身份登录并尝试使用身份验证中间件检查页面时出现关于 ERR_TOO_MANY_REDIRECTS 的错误时,我感到非常惊讶。像 admin 这个 si no auth user no auth?有这样的代码

Route::group([ 'namespace' => 'Shop','middleware' => ['auth'], 'prefix' => 'shop'], function () {
    Route::get('/', 'MainController@index')->name('shop');
    Route::get('/search', 'MainController@search')->name('shop.search');
    Route::get('/ajax-search', 'MainController@ajaxSearch')->name('shop.ajax-search');
    Route::get('autocomplete', 'MainController@autocomplete')->name('shop.autocomplete');
    Route::get('/searchbyname', 'MainController@searchbyname')->name('shop.searchbyname');


});
Route::group(['prefix' => 'cart','middleware' => ['auth:admin'], 'namespace' => 'Shop'], function () {
    Route::get('/','CartController@index')->name('shop.cart');
    Route::get('/add','CartController@add')->name('cart.add');
    Route::get('/details','CartController@details')->name('cart.details');
    Route::delete('/{id}','CartController@delete')->name('cart.delete');
});

如果我希望该管理员拥有身份验证用户 + 管理员路由的所有访问权限,我该如何解决此问题?

4

2 回答 2

0

也许这对你有帮助

Route::get('/', function () {
...})->middleware('first', 'second');

路由的多个中间件

于 2020-01-24T08:02:23.823 回答
0

您可以在Route::group. 例如:

Route::group([ 'namespace' => 'Shop','middleware' => ['auth', 'auth:admin'], 'prefix' => 'shop'], function () {
    ...
});
于 2020-01-24T08:05:17.280 回答