Проблема Google Chrome Frame (GCF) в IE8 с кешем - PullRequest
2 голосов
/ 01 октября 2010

Возможно, это где-то задавали, но я пытаюсь найти свой вопрос и не могу найти ответ.

Вот мой вопрос:

Я занимаюсь разработкой веб-приложения, и из-за какой-то серьезной проблемы с JavaScript в IE8 мне нужно, чтобы пользователь запустил " Google Chrome Frame " (Для повышения скорости веб-страницы).Я был впечатлен тем, что моя страница работала на 100% нормально до тех пор, пока она не должна была обновляться и не обновлялась (Ajax getJSON запрос с использованием jQuery).

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

Я не знаю, как это объяснить, но он просто не обновляется.Кроме того, когда я нажимаю F5 на странице, он не обновляет страницу, он сохраняет старую страницу (даже если я нажимаю CTRL - F5 или любой другойдругая обычная кнопка принудительного обновления).Чтобы получить изменения, мне действительно нужно закрыть браузер (IE8) и снова открыть его, чтобы он мог принять новые изменения.

Есть ли кто-нибудь, кто знает, как можно отключить кэш, когда Google Chrome Frameactive?

Я использую метатег:

<meta http-equiv="expires" content="0">
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache, must-revalidate"> 
<META HTTP-EQUIV="X-UA-COMPATIBLE" CONTENT="CHROME=1">

Если вам нужна дополнительная информация, не стесняйтесь спрашивать.

1 Ответ

0 голосов
/ 01 октября 2010

Старый трюк CGI состоял в том, чтобы закодировать дату как параметр в запросе, чтобы URL-адрес изменялся при каждом запросе. Как правило, это останавливает любое кэширование в URL.

То есть у вас будет url ? 01102010134532, если вы закодировали дату и время до миллисекунд.

Если я правильно понимаю ваше требование, вам придется сделать это в JQuery / JS, и вам нужно будет изменить параметр в URL после каждого запроса AJAX, чтобы следующий запрос отличался от предыдущего

...