Какая стоимость размещать в content http-equiv = Ты “Умер”, чтобы предотвращать кэш?

Я ищу, что моя страница не сохраняла данных в сеансе, ввиду того, что я делаю много вещей с помощью JS, но когда я делаю изменение, он не берет ее, если я не удаляю кэш-память, тогда я увидел, что, если используются этикетки, он поместил:

<meta http-equiv="cache-control" content="no-cache" /> 
<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Expires" content="-1" />

нужно упорядочивать, но я не уверен, да делает ли он это. Моя страница - в ASP.Net и также я прочитал, что он мог добавлять это в load страниц и это бы это решило:

Response.Cache.SetCacheability(HttpCacheability.NoCache)
Response.Cache.SetAllowResponseInBrowserHistory(False)
Response.AddHeader("Pragma", "no-cache")
Response.AddHeader("cache-control", "private")
Response.CacheControl = "no-cache" 

Мои вопросы:

  1. Какую стоимость нужно размещать в content="??":-1 ó 0? Каково различие между стоимостью?
  2. Так да он предотвращал бы кэш-память, или то, что я разместил, ни для чего не служит?
  3. Как я могу проверять, ли он или не удаляя кэш-память? А именно, я хочу, чтобы он всегда просил страницу как будто это был первый раз, что консультация.
1
задан 24.01.2017, 06:37
0 ответов

Какую стоимость нужно размещать в content = "??":-1 ó 0? Каково различие между стоимостью?

Я предполагаю, что ты относишься в <meta http-equiv="Expires" content="-1" />, в котором случае, согласно документации W3C, стоимости content это должен бы быть датой с форматом, определенным в RFC 1123. Пример этого формата:

Thu, 01 Dec 1994 16:00:00 GMT

На-1 помещает ó 0, теоретически не имеет значение, который из двух, потому что они были бы эквивалентными. Согласно той же документации протокола HTTP/1.1:

HTTP/1.1 clients and закоулки MUST treat other invalid восходите formats, especially including the оцените "0", туз in the past (i.e., "already expired").

Который было бы возможно переводить как:

В HTTP/1.1, клиенты и кэши ДОЛЖНЫ относиться к другим недействительным форматам даты, включая стоимость "0", как в прошлом (i.e. "уже потерявшее силу").

Как так 0 как-1 были бы недействительными датами, считались бы дата в прошлом и не сохранять в кэш-памяти (так что они отнеслись бы друг к другу о равном способе). Хотя, если определение протокола упоминает о стоимости "0" в особенности, почти лучше использовать этот прямо.

Но забота: хотя теоретически помещать ему стоимость "0" было бы должно функционировать, на этой другой странице Oracle рекомендует не делать это и в Вашем месте помещать дату, которая была бы в прошлом, потому что, если время серверов не синхронизировалось, было бы возможно возвращать версию, обысканную ошибкой.


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

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

Тогда кроме того, что помещает то, что уже у тебя есть:

<meta http-equiv="cache-control" content="no-cache" /> 
<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Expires" content="-1" />

ты мог бы добавлять какую-то больше (и уже шага менять стоимость от-1 до 0):

<meta http-equiv="cache-control" content="max-age=0" />
<meta http-equiv="cache-control" content="no-cache" /> 
<meta http-equiv="pragma" content="no-cache" />
<meta http-equiv="expires" content="0" />
<meta http-equiv="expires" content="Thu, 01 Dec 1994 16:00:00 GMT" />

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


Как я могу проверять, ли он или не удаляя кэш-память? А именно, я хочу, чтобы он всегда просил страницу как будто это был первый раз, что консультация

Ты можешь подтверждать это в твоем браузере, когда загружается страница, через программные средства разработки. Например, в Chrome:

  1. Открой программные средства разработчика (нажимая F12 или Ctrl+Shift+J)
  2. Нажми на сетевую закладку (Network)
  3. Перезагрузи страницу
  4. Ты сможешь видеть различные элементы страницы и как они загружаются:

    introducir la descripción de la imagen aquí

    Если они загружаются с кэш-памяти, Chrome ты это podnrá в колонне Размера (Size), как ты можешь видеть в изображении наверху.

1
ответ дан 03.12.2019, 17:31