Проблема с изменением страницы с помощью ajax и браузером, хранящим неизмененную страницу в кеше - PullRequest
5 голосов
/ 23 мая 2010

У меня есть ситуация, когда моя страница загружает некоторую информацию из базы данных, которая затем модифицируется с помощью AJAX.

Я нажимаю ссылку на другую страницу, а затем использую кнопку «Назад», чтобы вернуться на исходную страницу.

Изменения на странице через AJAX, которые я сделал ранее, не отображаются, потому что браузер хранит неизменную страницу в кэше.

Есть ли способ исправить это, не настраивая страницу, чтобы она вообще не кэшировалась?

Спасибо:)

1 Ответ

1 голос
/ 23 мая 2010

Представьте себе, что каждый запрос к серверу информации, включая начальную загрузку страницы и каждый запрос ajax, являются отдельными объектами. Каждый может или не может быть кэширован где-нибудь между сервером и браузером.

Вы изменяете начальную страницу, которая была вам предоставлена ​​(и в большинстве случаев кэшируется браузером), произвольными запросами к серверу и динамическими манипуляциями с DOM. Браузер должен отслеживать эти изменения.

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...