Сегодня я перешел с 5.1 на 5.2 и хотел, чтобы аутентификация работала. Но он не сохраняется и сам. Я использую Googles OAuth 2.0 и сохраняю идентификатор и имя в базе данных.Laravel 5.2 Auth :: login() не сохраняется
// OAuth flow..
Auth::loginUsingId($google_plus_id);
return redirect('/debug');
На пути отладки Я только dd(auth()->user())
.
Но это всегда возвращает null после перенаправления.
Когда я вхожу в систему и после этого dd()
аутентифицированный пользователь, он работает.
Но перенаправление на другой маршрут, и это NULL
Я в курсе новой промежуточного слоя-группа сети и поэтому мой routes.php выглядит так:
Route::group([ 'middleware' => [ 'web' ] ], function() {
Route::get('/auth/google', [
'as' => 'google.login',
'uses' => 'Auth\[email protected]'
]);
Route::get('/auth/google/callback', [
'as' => 'google.callback',
'uses' => 'Auth\[email protected]'
]);
Route::get('/debug', function(){
dd(auth()->user());
});
});
auth.php конфигурация файл также настроен.
'providers' => [
'users' => [
'driver' => 'eloquent',
'model' => App\Http\Models\GooglePlusUser::class,
],
],
И класс GooglePlusUser использует аутентифицируемый признак. Вся эта настройка отлично работала в L5.1, но почему-то это возится в 5.2, и я не могу найти почему.
Единственное, что я могу (и помните, что это может быть неправильно или не полезно) находится в вашей папке config, в файле session.php есть атрибут lifetime. Если это значение равно 0, оно выйдет из системы сразу после входа в систему. –
К сожалению, это не так, как я думал об этом. Это значение по умолчанию 120 минут. – Krenor