[英]Laravel 5.2 Auth::login not persisting logged user
我有一個身份驗證系統,該系統也使用Socialite進行社交登錄。
問題是,當我從社交媒體成功通過身份驗證使用Auth::login()
登錄用戶時,重定向后會話不會持續。
雖然我正在使用web
中間件
這是我在routes.php
代碼
Route::group(['namespace' => 'Frontend', 'middleware' => 'web'], function () {
Route::get('/', 'PagesController@index');
Route::get('login/{provider?}', 'AuthController@getLogin');
Route::post('login', 'AuthController@postLogin');
Route::get('login/callback/google', 'AuthController@getGoogleCallback');
Route::get('login/callback/facebook', 'AuthController@getFacebookCallback');
});
例如,當用戶在Facebook中成功通過身份驗證時,我會在控制器中使用它
Auth::login($user);
return redirect()->to('/');
但重定向后給我null
我還將User.php
移至app/Models/User.php
並在config/auth.php
進行了所有必要的更改。
您缺少主要路線的中間件= auth。
Route::group(['namespace' => 'Frontend', 'middleware' => ['web','auth'], function () {
Route::get('/', 'PagesController@index');
});
基本上,您的主路由應該具有身份驗證中間件,但沒有其他路由,因為來賓用戶將需要能夠訪問登錄頁面。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.