Я пытаюсь настроить опрос во внешнем интерфейсе для проверки неактивных пользователей и загрузки их на экран входа в систему, если они слишком долго остаются неактивными. Проблема в том, что каждый раз, когда я делаю вызов ajax, он сбрасывает сессию и действует так, как будто пользователь активен, даже если я остаюсь неактивным в приложении. Кажется, что вызов ajax заставляет сеанс действовать так, как будто пользователь активен. Есть ли способ сделать AJAX-вызов без повторного сброса сеанса? Я пытался добавить маршрут в мои api.php
маршруты, но если я проверяю Auth через эти маршруты, я просто получаю false каждый раз (не могу получить доступ к Auth::user()
). Любое решение этой проблемы.
Код и информация:
Использование SESSION_DRIVER=file
(я знаю, что можно обойтись в использовании драйвера базы данных, но я бы предпочел сохранить его file
, если это возможно)
UserController.php
public function userLoginPoll(Request $request)
{
$statusArray = [
'logged_in' => Auth::check()
];
return $statusArray;
}
web.php
Route::get('/users_api/userLoginPoll', 'UserController@userLoginPoll');
poll.js
$.poll(3000, function(retry){
$.get('/users_api/userLoginPoll', function(data){
if(data.logged_in){
retry();
}else{
window.location = '/login';
}
});
});
Использование этого подключаемого модуля JQ