2012-03-24 3 views
1

Я разработал веб-приложение, которое включает постоянно меняющийся ресурс (приложение обновляет базу данных, которая по очереди означает изменение страницы). В Chrome, когда я перехожу на другой сайт, перейдя по ссылке и возвращаясь с помощью кнопки «Назад», она показывает исходную версию страницы, а не последнюю версию. Если обновить страницу, я увижу изменения. Вы знаете, как справиться с этой проблемой? Есть ли способ заставить Chrome обновить страницу или сохранить последнюю версию?Google Chrome не открывает последнюю версию веб-приложения

+1

Очень сложно ответить на вопросы с достаточными данными. Пожалуйста, укажите [минимальный образец кода] (http://sscce.org/) и ссылку на живую версию образца. Прочтите [Написание идеального вопроса] (http://tinyurl.com/so-hints) для получения дополнительной информации. – outis

ответ

1

Очевидным ответом является установка заголовка Expires на текущее или предыдущее время (в правильном формате RFC), чтобы указать, что страница истекает немедленно. Однако также имеет значение a previous question. Кажется, Chrome хранит содержимое кэша в течение 300 секунд независимо от заголовков Expires/caching. Internet Explorer также может кэшировать агрессивно.

Уверен, что есть хороший способ обхода. Одна из возможностей может заключаться в том, чтобы установить cookie с текущим временем, когда страница обслуживается, и проверить его с помощью Javascript в начале страницы. Если значение слишком старое (ваш выбор того, как долго «слишком старый»), заставьте страницу перезагрузиться с помощью window.location, возможно, используя фиктивный запрос '?d='+Math.random(), чтобы гарантировать, что кешированная версия не используется.

Смежные вопросы