Выход - Как очистить кеш, asp.NET - PullRequest
1 голос
/ 25 августа 2011

Я работаю над asp.NET 4.0 Web Application с C #.В настоящее время я выполняю аутентификацию с использованием сеансов, и при выходе из системы я очищаю сеанс.Однако существует проблема, когда пользователь нажимает назад, он все еще может видеть кэшированную страницу.Я хотел бы отключить кэширование таких страниц или убедиться, что оно проверено.

Каков наилучший способ сделать это?Если я настрою сервер не хранить кэшированную информацию, это повлияет на все приложения или это будет просто мое приложение?

Ответы [ 2 ]

7 голосов
/ 25 августа 2011

Добавьте это в page_load

Response.Cache.SetCacheability(HttpCacheability.NoCache);

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

Это должно быть включено на каждую страницу, на которую пользователь не должен нажимать кнопку "назад".

0 голосов
/ 03 ноября 2014

Вы можете добавить следующие строки в Page_Init главной страницы

protected void Page_Init(object sender, EventArgs e)
    {
        Response.Cache.SetExpires(DateTime.UtcNow.AddMinutes(-1));
        Response.Cache.SetCacheability(HttpCacheability.NoCache);
        Response.Cache.SetNoStore();
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...