Хорошо известно, что Internet Explorer агрессивно кэширует вызовы ajax , тогда как все другие браузеры каждый раз захватывают данные свежие. Обычно это плохо: я никогда не сталкивался со случаем, когда я хочу, чтобы ajax НЕ связывался с сервером. Firefox, Safari и другие браузеры знают это и не кэшируют вызовы ajax.
Чтобы предотвратить кеширование IE, вы должны выполнить одно из следующих действий:
? Time = [timestamp]
) Я предпочитаю устанавливать заголовок без кеширования. Это правильный способ: он сообщает всем браузерам не кэшировать, а это именно то, что вы намереваетесь. Метод строки запроса заполняет кеш браузера данными, которые никогда не будут извлечены, оставляя меньше места для допустимого содержимого кеша. А метод POST - это искажение HTTP: POST предназначены для изменения данных.
Как лучше всего в Grails автоматически отправлять заголовок do-not-cache для всех запросов ajax? Я не хочу изменять какие-либо контроллеры, поэтому я думаю, что это должен быть классный трюк с фильтрами или что-то в этом роде.
Спасибо!