Можно ли проверить, попадет ли XmlHttpRequest в кеш, а не на сервер? - PullRequest
2 голосов
/ 14 декабря 2009

В IE, использующем Javascript, есть ли способ узнать, будет ли выполнение обычного GET для URL с использованием XmlHttpRequest извлекать свои данные из кэша или попадет на сервер?

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

Чтобы уточнить: я понимаю, как работает кеширование браузера, я пытаюсь понять, могу ли я использовать javascript, чтобы заранее определить, будет ли вызов ajax использовать кеш браузера. В моем случае я пишу библиотеку JS, поэтому я не контролирую поведение сервера, поэтому я крайне ограничен в знании априори, что такое настройки / заголовки кэша.

Ответы [ 2 ]

1 голос
/ 14 декабря 2009

По сути, это то, что приличные пользовательские агенты HTTP делают по умолчанию: они выбираются с сервера, только если нет правильной записи в кеше для местоположения, которое вы запрашиваете. Поэтому лучше всего контролировать (или хотя бы понимать) поведение кэширования - смотреть заголовки кэша HTTP, которые веб-сервер возвращает для местоположения, которое вы запрашиваете в своем скрипте.

0 голосов
/ 14 декабря 2009

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

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