Сеанс входа в Laravel 5.2 не сохраняется
Я внедряю простую систему аутентификации на Laravel 5.2, используя Sentinel.
// Route : /login
$success = Sentinel::authenticate(array(
'email' => $email,
'password' => $password,
));
echo $success ? 'Login success' : 'Login failed';
Итак, вышеприведенный код выводит Login success
после кода аутентификации. Но статус входа не сохраняется для других запросов. То есть: если я проверяю статус аутентификации из других запросов, он говорит, что я не вошел в систему!
// Route : test-login
echo \Sentinel::check() ? 'User is logged in' : 'User is not logged in';
Я даже пытался реализовать дефолтную аутентификацию Laravel, используя \Auth::attempt
, Но это также дает то же самое.
Любая помощь в этом очень ценится.
1 ответ
В Laravel 5.2 вам нужно подать заявку web
Группа была посредником для всех ваших маршрутов, вы не хотите, чтобы сеансы работали. Это основное отличие от Laravel 5.1.
Пожалуйста, посмотрите на https://laravel.com/docs/5.2/routing
На данный момент файл routs.php по умолчанию выглядит следующим образом:
Route::group(['middleware' => ['web']], function () {
// here you should put your routes
});
РЕДАКТИРОВАТЬ
Вы также можете посмотреть прямо на https://github.com/laravel/laravel/blob/master/app/Http/Kernel.php в middlewareGroups
свойство знать, какие промежуточные программы уволены web
промежуточное ПО группы