Я использую Laravel Socialite, а именно драйвер Google, чтобы люди могли войти / зарегистрироваться на моем сайте. У меня действительно раздражающая проблема, когда для перенаправления на панель инструментов необходимо дважды нажать кнопку «Вход».
$existingUser = Account::where('email', $user->email)->first();
if($existingUser){
Auth::login($existingUser, true);
} else {
$newUser = new Account();
$newUser->id = strtotime(date('Ymdhis'));
$newUser->name = $user->name;
$newUser->email = $user->email;
$newUser->google_auth_id = $user->id;
$newUser->save();
Auth::login($newUser, true);
}
return Redirect::to('/');
}
Выше приведен код, который у меня есть в LoginController
, он проверяет существующую учетную запись, если она найдена, он входит в систему и, если ее не удается найти, создает новую учетную запись, а затем регистрирует ее. В обоих случаях вы должны дважды нажать кнопку, чтобы войти в систему. Если создается новая учетная запись, сначала нажмите на нее, чтобы фактически добавить новую учетную запись в базу данных, но затем нажмите ее снова, чтобы перейти на панель мониторинга.
Я пытался return Redirect::intended('/')
, но это не имело значения.