Как я могу отключить Tomcat, кэширующийся completly?

Я испытываю затруднения из-за сайта, я в настоящее время продолжаю работать.

Мы пытаемся заставить Facebook соединить виджет комментариев. Виджет загружается каждый раз, когда мы выполняем новый запрос, который отвечает 200 состояниями OK. Но когда это возвращается с 304, Не Измененными загрузка привычки виджета.

Все это указывает на кэширующуюся проблему. Я пытался изменить context.xml

<Context cachingAllowed="false">

Это, казалось, не работало. Какие-либо подсказки?

5
задан flexterra 28 January 2010 в 16:28
поделиться

2 ответа

Похоже, проблема в клиентском браузере кэширует его, попробуйте добавить случайное число на ваш запрос. вроде __ RND __ = Math.random ()

0
ответ дан 18 December 2019 в 11:56
поделиться

Это, казалось, не работало. Любые советы?

атрибут атрибут На самом деле настраивает кэширование на стороне сервера, а не кэширование на стороне клиента, как вы ожидаете.

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

response.setHeader("Cache-Control", "no-cache, no-store, must-revalidate"); // HTTP 1.1.
response.setHeader("Pragma", "no-cache"); // HTTP 1.0.
response.setDateHeader("Expires", 0); // Proxies.

Ответ здесь, кстату httpservletResponse , который был отброшен из 2-го сервета аргумента Дофильтер () Метод.

Не забудьте очистить кэш-память клиента (таким образом, внутри конфигурации WebBrowser) перед тестированием все это :)

15
ответ дан 18 December 2019 в 11:56
поделиться
Другие вопросы по тегам:

Похожие вопросы: