Flask快取靜態檔案的具體方法

2022-10-03 22:15:31 字數 981 閱讀 1902

大家好,今天才發現很多學習flask的小夥伴都有這麼乙個問www.cppcns.com題,清理快取好麻煩啊,今天就教大家怎麼解決。

大家在使用flask靜態檔案的時候,每次更新,發現css或是js或者其他的檔案不會更新。

這是因為瀏覽器的快取問題。

普遍大家是這幾步解決辦法。

清理瀏覽器快取;

設定瀏覽器不快取;

也有以下這麼寫的:

@app.context_processor

def override_url_for():

return dict(url_for=dated_url_for)

def dated_url_for(endpoint, **values):

if endpoint == 'static':

&nbswww.cppcns.comp; filename = values.get('filename', none)

if filename:

file_path = os.path.join(app.root_path, endpoint, filename)

values['q'] = int(os.stat(file_path).st_mtime)

return url_for(endpoint, **values)

如果是我,我不會這麼做,效率很低。

這是  flask的 config 的原始碼,裡面可以看到,有設定快取最大時間

send_file_max_age_defa程式設計客棧ult 可以看到,它是乙個 temedelta 的值

我們去更改配置。

第2行: 我們引入了datetime的timedelta物件

第6行: 我們配置快取最大時間

這樣就解決了快取問題,不用去寫多餘的**,不用去清理瀏覽器的快取。

內容擴充套件:

flask修改靜態資源後快取檔案不能及時更改問題解決

加上一句話。下圖圈起來的,表示只快取一秒,相當於不快取了。

flask中靜態檔案的呼叫

flask中靜態檔案的呼叫 coding utf 8 from flask import flask,render template 這裡在瀏覽器中可以直接訪問到static資料夾中的的靜態檔案 例如要獲取01.html,則直接輸入 127.0.0.1 8866 static 01.html 即可 ...

Flask 靜態檔案 模板檔案設定

flask預設的設定 在django專案中,如果需要訪問靜態檔案,預設則是使用 static的字首來進行訪問。那麼對於flask來說,也是一樣的。那麼如果需要修改預設的配置,應該怎麼去設定呢?import name,static url path none,static folder static ...

Flask之靜態檔案處理

推薦 from flask import flask,render template def index return render template index.html if name main 解析 在檢視中的flask類中的引數作用 1.template folder 是存放頁面的資料夾,預...