Открытие веб-браузера в приватном режиме, чтобы избежать кеширования - PullRequest
0 голосов
/ 24 апреля 2020

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

webbrowser.open("http://127.0.0.1:5000/")
app.run(host='0.0.0.0', port=5000)

Я также попробовал следующее, но там говорится, что chrome не распознается как внутренняя или внешняя команда, работающая программа или командный файл. , То же самое для '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)

Однако, Я упаковал все приложение flask в исполняемый файл с помощью pyinstaller, и его можно использовать на любом компьютере windows. Но я не буду знать chrome_path на этом компьютере, так как я могу открыть веб-браузер в приватном режиме, не зная пути?

Спасибо

1 Ответ

0 голосов
/ 24 апреля 2020

Приватный просмотр не является вашей фундаментальной проблемой. Вы объяснили, что вас действительно волнует, это кэширование в браузере.

Используйте заголовок Cache-Control: max-age=600, чтобы ограничить время жизни до десяти минут. Или используйте тег HTML META, чтобы выполнить sh то же самое.

РЕДАКТИРОВАТЬ

Когда вы сказали, что вас беспокоит «потенциальная перегрузка кэша браузера», это звучало как количество материала замедляло работу браузера. Вы мало рассказали о своем шаблоне просмотра, в том числе о GET или POST.

Если вы не хотите, чтобы браузер запоминал заполненные данные формы, используйте атрибут autocomplete :

<form method="post" action="/myform" autocomplete="off">

Чтобы избежать синдрома XY , вы можете задать новый вопрос, который задает новый набор параметров.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...