JQuery HTML-ответ - PullRequest
       5

JQuery HTML-ответ

0 голосов
/ 12 сентября 2010

Можно ли определить, был ли ответ , возвращенный $. Ajax , отправлен из кэша браузера или был свежим?

Спасибо.

Ответы [ 2 ]

4 голосов
/ 12 сентября 2010

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

См .: http://www.mnot.net/cache_docs/#CACHE-CONTROL

Возможно, вы захотите установить max-age, no-store, no-cache, must-revalidate или комбинацию предыдущих.

0 голосов
/ 12 сентября 2010

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

$.ajaxSetup({cache: false}});

Не уверен, чего вы хотите достичь.

Если вы действительно хотите знать,данные устарели, вы можете сделать что-то вроде:

  1. Заставьте ваш сервер писать уникальную строку каждый раз, когда она вызывается
  2. Проверьте, существует ли эта строка в вашем временном JavaScriptпеременные
  3. Если да, его устаревшие, если нет, его новые.
...