Я внедряю простую систему аутентификации на Laravel 5.2, используя часовой.
// 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
, Но это также дает то же самое.
Любая помощь в этом очень ценится.
В Laravel 5.2 вам нужно подать заявку web
Группа была посредником для всех ваших маршрутов, которые вы не хотите, чтобы сеансы работали. Это основное отличие от Laravel 5.1.
Пожалуйста, посмотрите на https://laravel.com/docs/5.2/routing#basic-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
промежуточное ПО группы
Других решений пока нет …