, поэтому у меня есть группа маршрутов в моем файле api.php
, например:
Route::group(['middleware' => 'auth:api'], function(){
//routes
});
Проблема с этой группой заключается в том, что возвращается ошибка 401
.
Почему?
Я предполагаю, что мои файлы cookie / сеанса, что бы это ни было, истекли, и они возвращают ошибку 401 (пока пользователь не знает об этом).
Проблема
Проблема в том, что laravel заставляет моего пользователя войти в систему для SESSION_LIFETIME=120
, но мой API настроен на 60
(пока не уверен в этом)
'api' => [
'throttle:60,1',
'bindings',
],
Вопрос
- Что я должен сделать, чтобы выйти из системы по истечении сеанса, чтобы в следующий раз, когда пользователь посещал мой сайт, не обнаружил ошибку
401
и знал, что он / она уже вышел из системы и ему необходимо снова войти в систему?
Обновление
Я сделал промежуточное ПО для проверки времени жизни сеанса и выхода пользователя из системы, если он истек, но я не могу получить значение lifetime
из него.
public function handle($request, Closure $next)
{
$bag = Session::all();
$max = config('session.lifetime') * 60; // min to hours conversion
if (($bag && $max < (time() - $bag->getLastUsed()))) {
$request->session()->flush(); // remove all the session data
Auth::logout(); // logout user
}
return $next($request);
}