У меня есть приложение со многими действиями ajax (реализовано с использованием JQuery.ajax), которое возвращает JSON или html. Некоторые из них должны быть доступны только авторизованным пользователям, и я украсил их атрибутом [Authorize]
. Если действия не ajax, если пользователь не авторизован - система перенаправляет его на страницу входа (настроенную в web.config).
Но это не относится к действиям ajax, потому что, если пользователь авторизован - он загружает страницу, после того, как истекает срок действия этого cookie, и он не авторизован, и вместо блока html, который должен заменить старый, он получает мою страницу входа в блок ,
Я знаю, что могу решить эту проблему вручную, например, удалить атрибут [Authorize] и вернуть специальный json / empty html, если пользователь не авторизован. Но мне не нравится это решение, потому что мне нужно переписать все мои действия и функции ajax. Мне нужно глобальное решение, которое позволит мне не переписывать свои действия (может быть пользовательский атрибут авторизации или некоторая пользовательская обработка неавторизованного результата http).
Я хочу вернуть код состояния, если запрос ajax, и перенаправить на страницу входа, если запрос не ajax.