HTML5应用程序缓存-缓存文件不会更新,即使清单已更新

HTML5应用程序缓存-缓存文件不会更新,即使清单已更新,html,offline,offline-caching,application-cache,Html,Offline,Offline Caching,Application Cache,我有一个版本化的缓存清单: #version = e5b4271 每次此版本更改时,我的webapp都会加载新的清单,但它从不从服务器加载更新文件。即使我清除浏览器缓存(而不是应用程序缓存本身),或者按Ctrl+Shift+R强制它获取新版本,它仍然会从旧的appcache加载文件 我能让它更新的唯一方法是在设置中清除浏览器的应用程序缓存,但显然这是不可接受的,因为我需要为普通用户更新它 你知道为什么会发生这种情况吗?刚刚想出来。我使用的是Flask的开发服务器,默认情况下(通过werkzeu

我有一个版本化的缓存清单:

#version = e5b4271
每次此版本更改时,我的webapp都会加载新的清单,但它从不从服务器加载更新文件。即使我清除浏览器缓存(而不是应用程序缓存本身),或者按Ctrl+Shift+R强制它获取新版本,它仍然会从旧的appcache加载文件

我能让它更新的唯一方法是在设置中清除浏览器的应用程序缓存,但显然这是不可接受的,因为我需要为普通用户更新它


你知道为什么会发生这种情况吗?

刚刚想出来。我使用的是Flask的开发服务器,默认情况下(通过werkzeug),它会为静态文件发送12小时的缓存头。将以下内容添加到我的配置解决了此问题:

SEND_FILE_MAX_AGE_DEFAULT = -1
如果其他人有此问题,请检查服务器配置以确保缓存头未与静态文件一起发送。您可以在第一次加载文件时在chrome的网络选项卡中检查这一点