開発中に私のJSファイルに合理的なキャッシュ有効期限を設定しようとしています。私はHTML、CSS、JSがstatic
ディレクトリの下にある標準的な設定をしています。Flask静的ファイルCache-Control
docsはこれについて言及していますが、私の人生ではこれを動作させることはできません。私が最初に暗黙の両方の方法、
class MyFlask(flask.Flask):
def get_send_file_max_age(self, name):
if name.lower().endswith('.js'):
return 60
return flask.Flask.get_send_file_max_age(self, name)
app = MyFlask(__name__)
との両方が影響を及ぼさなかった
app.config['SEND_FILE_MAX_AGE_DEFAULT'] = 60
を試してみた、下の私のJSファイル/静的まだ、バックデフォルトのキャッシュのタイムアウトで来ている
Cache-Control: public, max-age=43200
何かありがとうございました。
1.フラスコのdevサーバーまたはnginxのようなhttpプロキシを使用していますか? 2. ''フラスコを返す.Flask.get_send_file_max_age(self、name) ''の代わりに '' return super(MyFlask、self).get_send_file_max_age(name) ''を使うべきです。 – Jarus
上記のクラスはdefaltフラスコ開発サーバーを使用して私のために働いています。 –
これらのパフォーマンスの理由から、私は(そして他の多くの人が聞いたことから)私の静的ファイルを、私が使っているWebサーバー(nginx/apache)によって直接提供できるようにしました。 –