Я пишу приложение Laravel 5.2. Мне нужно вручную войти в систему пользователя, для которого я использую \Auth::login($user)
. Я делаю это следующим образом.
if ($user = User::where('phone',session('phone'))->first())
{
\Auth::login($user);
// \Auth::loginUsingId($user->id);
// Auth::attempt(['email' => $user->email, 'password' => 'password']);
$data = \Auth::user(); //returning correct results
}
Я попробовал все варианты, а именно Auth::login($user)
, Authh:loginUsingId($user->id)
и attempt
метод. Эти методы работают нормально, поскольку переменная $ data хранит объект корректного пользователя. Но проблема в том, что когда я перехожу на другой маршрут, скажите '/home'
, пользователь не будет более аутентифицирован.
Что может быть неправильным? Как я мог сделать это правильно?
http://laravel-tricks.com/tricks/temporary-user-switching Я попробовал эту ссылку, работает очень хорошо :) дайте мне знать если это поможет! – Markinson
нет, здесь это не поможет. Потому что я реализовал то же самое с разных точек зрения. У меня проблема с сохранением подлинности. –
Какова ваша установка маршрута? Использует ли ваш маршрут '/ home'' web' и 'auth' middlewares? –