Аутентификация и защита (защита маршрутов) в laravel - PullRequest
0 голосов
/ 24 января 2020

У меня есть защита 'admin'.

как я знаю, что в Laraver guard работают как мульти-аутентификации (я могу войти как пользователь и как администратор одновременно).

но я довольно Удивительно, когда у меня появляется ошибка об ошибке ERR_TOO_MANY_REDIRECTS, когда я вхожу в систему как администратор и пытаюсь проверить страницу с промежуточным программным обеспечением авторизации. Как админ это си нет аутентификации пользователя нет аутентификации? Есть такой код

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');
});

как я могу решить эту проблему, если я хочу, чтобы администратор имел все права доступа в качестве пользователя аутентификации + маршруты администратора?

Ответы [ 2 ]

0 голосов
/ 24 января 2020

Вы можете объявить 2 промежуточных программного обеспечения в Route::group. Например:

Route::group([ 'namespace' => 'Shop','middleware' => ['auth', 'auth:admin'], 'prefix' => 'shop'], function () {
    ...
});
0 голосов
/ 24 января 2020

может быть, это поможет вам

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

несколько промежуточных программ для маршрута

...