2010-09-08 103 views
0

在我的Pylons應用程序中,我編寫了一個腳本來自動生成縮略圖,通過url進行圖像創建。如何防止瀏覽器的圖像緩存?

爲了生成縮略圖我使用PIL(蟒)

W¯¯不會通過瀏覽器,以防止圖像緩存。

我不能SRC後使用?[隨機數],因爲該網站,在那裏我過去的這個形象必須是靜態的。

我嘗試發送頭

response.headers['Cache-Control'] = 'no-store,no-cache, must-revalidate,post-check=0, pre-check=0,max-age=0' 

但仍然不工作,瀏覽器緩存這一形象,

誰能幫我解決這個問題呢?

在此先感謝。

+1

您正在測試哪個瀏覽器? IE中有一個衆所周知的錯誤(我見過的所有版本)都會讓它忽略緩存標題。 – nmichaels 2010-09-08 19:50:57

+0

我用Iceweasel(Firefox的debian)測試它。 – gummmibear 2010-09-08 19:59:39

回答

0

傳統上,你需要額外的頭部來捕捉大多數瀏覽器,即使如此,有些仍然會緩存它。即使支持Cache-Control標頭(它是HTTP 1.1的一部分)的瀏覽器也可能通過HTTP 1.0代理進行連接,該代理會去除非標準標頭。我還會嘗試添加一個明確的Expires標題,其中包含發送圖像的日期和時間(或過去的固定日期)以及值爲「no-cache」的Pragma標題。

response.headers['Cache-Control'] = 'no-store,no-cache, must-revalidate,post-check=0, pre-check=0,max-age=0' 
response.headers['Expires'] = 'Wed, 01 Sep 2010 00:00:00 GMT' 
response.headers['Pragma'] = 'no-cache'