0

Отключение кэширования в Flask

11

Описание проблемы

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

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

Я пробовал использовать HTML мета-теги, но безуспешно:

<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" />
<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Expires" content="0" />

Также я пытался использовать специальные для Flask заголовки:

resp.headers["Cache-Control"] = "no-cache, no-store, must-revalidate"
resp.headers["Pragma"] = "no-cache"
resp.headers["Expires"] = "0"

Вот как я пытался изменить заголовки resp:

r = make_response(render_template('video.html', video_info=video_info))

r.headers["Cache-Control"] = "no-cache, no-store, must-revalidate"
r.headers["Pragma"] = "no-cache"
r.headers["Expires"] = "0"

Тем не менее, как Google Chrome, так и Safari продолжали кэшировать содержимое.

В чем может быть проблема?

1 ответ(ов)

0

Комбинация установки app.config['SEND_FILE_MAX_AGE_DEFAULT'] = 0 в файле Python и жесткой перезагрузки браузера Chrome (команда + shift + R) помогла мне, так как, похоже, Chrome кеширует статические файлы.

Чтобы ответить на вопрос, пожалуйста, войдите или зарегистрируйтесь