1

После обновления с laravel от 5.1 до 5.2 у меня возникла эта неожиданная проблема. Я использую Auth::login, чтобы вручную войти в систему. И когда я перенаправляю пользователя, он не сохраняется.Auth :: пользователь не сохраняется при переадресации

Вся конфигурация была изящно перенесена из чистой установки laravel 5.2.

Вот код маршруты:

Route::group([ 'middleware' => [ 'web' ] ], function() { 
    Route::get('test', function() { 
     $user = \Upping\Models\User::find(311); 
     Auth::login($user); 
     Auth::check(); // true 
     return redirect('authCheck'); 
    }); 

    Route::get('authCheck', function() { 
     Auth::check(); // false 
    }); 
}); 

Config \ auth.php -> поставщики

'users' => [ 
    'driver' => 'eloquent', 
    'model' => \Upping\Models\User::class, 
], 

Говорит опыт Laravel, крошечный намек должен быть достаточно для меня. И спасибо за помощь.

+0

Это вряд ли будет перенаправление, которое нарушает вещи. Убедитесь, что ваши сеансы работают. – ceejayoz

+0

Домен точно такой же (до и после перенаправления) - как с www, так и без www? Что произойдет, если вы не сделаете это перенаправление и не перейдете на страницу 'authCheck'? Это также «ложь»? –

+0

@ MarcinNabiałek 1) Домен точно такой же (оба без www). 2) Прямой доступ к 'authCheck' также дает мне« false ». –

ответ

0

Так что настоящая причина была немного надуманной. Я прочитал журналы ошибок и понял, что Zend Z-ray и его плагин laravel имеют значение 5.2 для обновления.

После того, как я выключил все, все начало действовать должным образом.

0

ли вы кладете все ваши маршруты внутри:

Route::group(['middleware' => ['web']], function() { 
    // here your routes 
}); 

? Если нет, вы должны это сделать, потому что в Laravel 5.2 сеанс запущен для web группового промежуточного ПО по умолчанию. См Routing documentation подробности

EDIT

Если это не так - я вижу, вы используете пользовательский класс User \Upping\Models\User, который вы используете для входа в систему. Вы установили тот же класс в config/auth.php в providers -> users -> model?

+0

Нет, это определенно не так. Я обновил свой пост. Извините за скрытие информации. –

+0

@YauheniPrakopchyk Пожалуйста, посмотрите мое редактирование –

+0

Я добавил раздел к вопросу. Кажется, это не так. Класс пользователя использует обновленные свойства. И я могу получить пользователя после I Auth :: login one. Не после перенаправления. –

Смежные вопросы