MVC: обработка тайм-аутов аутентификации через Ajax - PullRequest
0 голосов
/ 05 мая 2020

Итак, у нас были некоторые проблемы, когда пользователи получали сообщение об ошибке при попытке выполнить действия на веб-сайте, мы полагаем, что это может быть результатом того, что время входа пользователей истекло / срок действия истек.

есть способ переопределить то, что пытается вызвать ajax, и перенаправить на страницу входа?

Я надеюсь, что нам не нужно будет go в каждый ajax вызов на сайте и добавить что-то вроде if (response.notLoggedIn) и выполните перенаправление из представления.

Любые советы приветствуются. Ура.

1 Ответ

0 голосов
/ 05 мая 2020

Итак, я ошибался, полагая, что вы не можете вернуть целое представление в вызове ajax, чтобы прервать происходящее.

В контроллере аутентификации у меня было это. Примечание: если запрос исходит из просроченного соединения, он всегда будет здесь.

if (Request.IsAjaxRequest())
        {
            TempData["toastrMessage"] = "Your session has expired.";
            TempData["toastrType"] = "Error";
            return View("LoginReload");
        }

При вызове ajax ошибки не возвращаются, и страница просто переходит прямо на страницу входа.

...