Перенаправить на страницу входа, если сессия истекает из запроса AJAX - PullRequest
2 голосов
/ 17 февраля 2012

Можно ли выполнить перенаправление при использовании @Ajax.ActionLink на страницу входа в систему, если сеанс пользователя истек вместо загрузки страницы входа в систему в представлении, где будет обновляться содержимое Ajax?Например, можно ли проверить состояние, полученное с сервера, в функции OnBegin вызова Ajax?

Ответы [ 2 ]

4 голосов
/ 17 февраля 2012

Фил Хаак написал хорошую статью об этой ситуации и возможностях ее обработки: http://haacked.com/archive/2011/10/04/prevent-forms-authentication-login-page-redirect-when-you-donrsquot-want.aspx

Вот еще один вариант, в котором ваш возвращаемый объект включает переменную, указывающую, следует ли перенаправлять результат, Почему jquery ajax вызывает ошибку после тайм-аута сеанса в asp.net mvc? .

1 голос
/ 21 января 2013

Я знаю, что это немного поздно, но на тот случай, если сюда приземлится другой пользователь. Мой любимый способ справиться с этим - наследовать и расширять AuthorizeAttribute. Таким образом, я могу украсить все контроллеры, которые должны перенаправлять вызовы Ajax на страницу входа.

Это гладкий и многократно используемый, и на самом деле проще, чем думает большинство людей. Вот полное пошаговое руководство о том, как это сделать, здесь: ASP.NET MVC 4: Как перенаправить на страницу входа из вызова AJAX с помощью [Авторизовать]

Надеюсь, это поможет.

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