Подтвердить что ты не робот

Что означает Response.Cache.SetCacheability и Response.Cache.SetAllowResponseInBrowserHistory?

Response.Cache.SetCacheability(HttpCacheability.NoCache);
Response.Cache.SetAllowResponseInBrowserHistory(false);

При поиске аутентификации я обнаружил две вышеуказанные строки. Что они означают?

4b9b3361

Ответ 1

Метод HttpCachePolicy.SetCacheability

NoCache: устанавливает заголовок Cache-Control: no-cache. Без имени поля директива применяется ко всему запросу, а кэш общего доступа (прокси-сервера) должен принудительно выполнить повторную проверку с исходным веб-сервером до удовлетворения запроса. При имени поля директива применяется только к названному полю; остальная часть ответа может быть предоставлена ​​из общего кэша.

HttpCachePolicy.SetAllowResponseInBrowserHistory Method

Когда для параметра HttpCacheability установлено значение NoCache или ServerAndNoCache, заголовок HTTP истекает по умолчанию, равный -1; это говорит клиенту не кэшировать ответы в папке "История", поэтому при использовании кнопок "назад/вперед" клиент каждый раз запрашивает новую версию ответа.

Ответ 2

Первый говорит браузеру не кэшировать эту страницу (см. здесь), а второй говорит браузеру не включать эту страницы в истории просмотра (см. здесь).

Ответ 3

В этом cache управляется с помощью следующего утверждения:

Response.Cache.SetCacheability(HttpCacheability.NoCache);

Ответ 4

Эти строки не позволяют кешировать страницу.

Ответ 5

То, что я обнаружил трудным образом и в день исследования, имея Response.Cache.SetCacheability(HttpCacheability.ServerAndNoCache)

в Global.asax.cs файле:

protected void Application_PreSendRequestHeaders(Object sender, EventArgs e)
{
    Response.Cache.SetCacheability(HttpCacheability.ServerAndNoCache);
}

помогает обрабатывать всплывающее окно с новыми данными в браузере IE.

Устанавливая это, второй раз вызывает контроллер, когда всплывающее окно открывается и обновляет данные внутри сервера.

Надеюсь, что это поможет кому-то.