c # проблема тайм-аута сеанса в опросе ajax - PullRequest
0 голосов
/ 28 ноября 2018

В моем приложении есть опрос ajax, который проверяет, что некоторые критические данные поступили в базу данных.Теперь у моего приложения установлен тайм-аут на 30 минут, который отлично работает на всех других страницах, кроме страницы, где присутствует опрос ajax.Время ожидания на этой странице не истекает, так как он имеет непрерывный опрос

Я не могу использовать

[SessionState(SessionStateBehavior.Disabled)]

для этого конкретного действия, так как он получает некоторые данные из сеанса (например, идентификатор пользователя)

Я также пытался использовать setInterval, как это в Javascript

 var sessionTimeout = (@Convert.ToInt32(HttpContext.Current.Session.Timeout)+1) * 60000
    var sessionTimeoutInterval;

    function startSessionInterval() {
        sessionTimeoutInterval = window.setInterval(
            function () {
                ptc_session_helper.IsSessionAlive('@Url.Action("IsSessionEx", "Session")', '@Url.Action("SignOut", "AccountName")')
            }, sessionTimeout);
    }

    function clearSessionInterval()
    {
        clearInterval(sessionTimeoutInterval);
    }
    startSessionInterval()

    //Reset Timer
    $(document).ajaxComplete(function () {
        clearSessionInterval();
        startSessionInterval();
    });

Все еще не работает.

Есть ли другой способ присутствовать?

...