Laravel Auth Polling - сессия перезапускается с помощью Ajax Call - PullRequest
0 голосов
/ 11 сентября 2018

Я пытаюсь настроить опрос во внешнем интерфейсе для проверки неактивных пользователей и загрузки их на экран входа в систему, если они слишком долго остаются неактивными. Проблема в том, что каждый раз, когда я делаю вызов 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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...