Php Laravel 5.2中间件身份验证不断将我重定向到登录页面

Php Laravel 5.2中间件身份验证不断将我重定向到登录页面,php,url-routing,laravel-routing,middleware,laravel-5.2,Php,Url Routing,Laravel Routing,Middleware,Laravel 5.2,我正试图用Laravel5.2构建一个简单的管理仪表板,并创建了一个管理中间件,其中包括“web”和“auth”中间件 在my kernel.php文件中: protected $middlewareGroups = [ 'web' => [ \App\Http\Middleware\EncryptCookies::class, \Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::cla

我正试图用Laravel5.2构建一个简单的管理仪表板,并创建了一个管理中间件,其中包括“web”和“auth”中间件

在my kernel.php文件中:

protected $middlewareGroups = [
    'web' => [
        \App\Http\Middleware\EncryptCookies::class,
        \Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
        \Illuminate\Session\Middleware\StartSession::class,
        \Illuminate\View\Middleware\ShareErrorsFromSession::class,
        \App\Http\Middleware\VerifyCsrfToken::class,
    ],

    'api' => [
        'throttle:60,1',
    ],
    'admin' => [
        'web',
        'auth',
    ]
];
在我的路线中,我为我的管理路线创建了一个组。代码如下:

Route::group(['prefix' => 'admin', 'namespace' => 'Admin'], function({
    Route::get('/', [
        'as'   => 'admin',
        'middleware' => 'admin', 
        'uses' => 'LoginController@dashboard',
    ]);

    Route::get('/login', [
        'as'   => 'login',
        'uses' => 'LoginController@login'
    ]);

    Route::post('/login', [
        'as'   => 'post_login',
        'uses' => 'LoginController@authenticate'
    ]);

});
登录控制器:

class LoginController extends Controller
{
    public function dashboard()
    {
        return 'hey';
    }
    public function login()
    {   
        return view('admin.login');
    }
    public function authenticate()
    {   
         $requestData = request()->all();
         $email = $requestData['email'];
         $password = $requestData['password'];

         if (Auth::attempt(['email' => $email, 'password' => $password])) {

            return redirect()->intended('admin');
         }
    } 
}
以及中间件:

public function handle($request, Closure $next, $guard = null)
{
    if (Auth::guard($guard)->guest()) {
        if ($request->ajax()) {
            return response('Unauthorized.', 401);
        } else {
            return redirect()->guest('admin/login');
        }
    }
    return $next($request);
}
现在的问题是,如果将我的“管理”中间件添加到路由组,我会得到“太多重定向循环”,如果我只在管理根路由上使用它,就像代码中显示的那样,我总是重定向到登录视图。即使在对用户进行身份验证之后,我也总是通过中间件。从文档中我了解到,在用户凭据检查之后,我应该被重定向到我最初尝试访问的url,而不需要再次通过中间件

有人能告诉我我错过了什么吗


提前谢谢

我不认为你们可以像这样把中间商集团也包括进来你们是什么意思?我可以创建一个使用auth和web中间件的管理中间件。但是,如果我在我的路径中使用了“auth”中间件,而不是我创建的中间件,我会遇到同样的问题,所以我认为这不是问题所在。