Я создал фляжное приложение, которое работает непрерывно, и из-за этого оно потенциально может перегружать кеш браузера. Поскольку приложение flask просто заполняет формы и работает круглосуточно и без выходных, ответы могут накапливаться и сохраняться в кеше. Я подумал, что если я запущу его в приватном режиме, то вообще не будет проблем с кэшированием. Я использую веб-браузер, чтобы открыть приложение фляги.
webbrowser.open("http://127.0.0.1:5000/")
app.run(host='0.0.0.0', port=5000)
Я также пробовал следующее, но затем он говорит, что «хром» не распознается как внутренняя или внешняя команда, исполняемая программа или пакетный файл. То же самое для «google-chrome» или «chrome-stable»:
import os
os.system("chrome -incognito http://example.com")
Я знаю, что вы могли бы сделать следующее, чтобы открыть в приватном режиме:
import webbrowser
url = 'www.google.com'
chrome_path = 'C:/Program Files (x86)/Google/Chrome/Application/chrome.exe %s --incognito'
webbrowser.get(chrome_path).open_new(url)
Тем не менее, я собрал все свое приложение для фляг в exe-файл с помощью pyinstaller, и его можно использовать на любом компьютере с Windows. Но я не буду знать chrome_path на этом компьютере, так как я могу открыть веб-браузер в приватном режиме, не зная пути?
Благодарность
1 ответ
Приватный просмотр не является вашей основной проблемой. Вы объяснили, что вас действительно волнует кэширование браузера.
Используйте заголовок Cache-Control: max-age=600
, чтобы ограничить время жизни десятью минутами. Или используйте тег HTML META, чтобы сделать то же самое.
РЕДАКТИРОВАТЬ
Когда вы сказали, что беспокоитесь о "потенциально перегружает кеш браузера" это звучало как количество материала тормозил браузер. Вы мало рассказали о своей схеме просмотра, в том числе было ли это GET или POST.
Если вы не хотите, чтобы браузер запоминал заполненные данные формы, используйте автозаполнение:
<form method="post" action="/myform" autocomplete="off">
Чтобы избежать синдрома XY, вы можете задать новый вопрос который задает новый набор параметров.
Похожие вопросы
Новые вопросы
python
Python — это мультипарадигмальный многоцелевой язык программирования с динамической типизацией. Он предназначен для быстрого изучения, понимания и использования, а также обеспечивает чистый и унифицированный синтаксис. Обратите внимание, что Python 2 официально не поддерживается с 01.01.2020. Если у вас есть вопросы о версии Python, добавьте тег [python-2.7] или [python-3.x]. При использовании варианта Python (например, Jython, PyPy) или библиотеки (например, Pandas, NumPy) укажите это в тегах.
<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" />
, но браузер все еще помнил мои данные после того, как я отправил форму. Когда я проверяю его вручную в частном браузере, он не запоминает никаких входных данных.