Старый вопрос, но мое решение немного другое.
Я писал одностраничное веб-приложение, которое постоянно вызывало вызовы ajax, вызванные пользователем, и чтобы сделать его еще более трудным, требуются библиотеки который использовал методы, отличные от jquery (например, dojo, native xhr и т. д.). Я написал плагин для одной из моих собственных библиотек для кэширования ajax-запросов как можно более эффективным способом, который будет работать во всех основных браузерах, независимо от того, какие библиотеки использовались для вызова ajax.
В решении используется jSQL (написанный мной - постоянная реализация SQL на стороне клиента, написанная в javascript, которая использует методы индексированияddddd и другие методы хранения) и в комплекте с другой библиотекой под названием XHRCreep (написанный мной), который является полной перезаписью собственного объекта XHR.
Чтобы реализовать все, что вам нужно сделать, это включить плагин на вашей странице, который находится здесь .
Существует два варианта:
jSQL.xhrCache.max_time = 60;
Установите максимальный возраст в минутах. все кэшированные ответы, которые старше этого, запрашиваются повторно. Значение по умолчанию - 1 час.
jSQL.xhrCache.logging = true;
Если установлено значение true, для отладки отображаются консольные вызовы XHR.
Вы можете очистить кеш на любой заданной странице с помощью
jSQL.tables = {}; jSQL.persist();