如何发布对HTML5缓存文件的更改?

如何发布对HTML5缓存文件的更改?,html,caching,browser,browser-cache,Html,Caching,Browser,Browser Cache,我知道如何通过简单地更改appcache清单中的一个字符来告诉浏览器再次下载缓存文件,但是当我这样做时,我如何确保浏览器下载新文件而不进行更改文件名之类的操作 我知道我可以发送文件过期标题,但我没有使用它们的经验。他们会使用HTML5缓存吗?我送哪一个 我的印象是,浏览器没有足够的智能来检测文件何时被修改,并且会继续使用缓存的文件,直到您通过刷新页面或更改文件名来强制它。我不想这样做,因为这也意味着更新清单,只是额外的工作 我的最佳解决方案是稍微更改清单,然后浏览器去获取任何已更改的文件,而不必

我知道如何通过简单地更改appcache清单中的一个字符来告诉浏览器再次下载缓存文件,但是当我这样做时,我如何确保浏览器下载新文件而不进行更改文件名之类的操作

我知道我可以发送文件过期标题,但我没有使用它们的经验。他们会使用HTML5缓存吗?我送哪一个

我的印象是,浏览器没有足够的智能来检测文件何时被修改,并且会继续使用缓存的文件,直到您通过刷新页面或更改文件名来强制它。我不想这样做,因为这也意味着更新清单,只是额外的工作


我的最佳解决方案是稍微更改清单,然后浏览器去获取任何已更改的文件,而不必我强制执行。

我要做的是在清单中添加时间戳作为注释

# 20130623 025200
每次我想强制刷新时就更新它

编辑:正如我在评论中指出的,浏览器将重新下载清单中明确列举的所有文件。对于不在清单中的文件(例如,HTML文件中引用但不在清单中的CSS或图像),默认过期日期优先


标准中描述了算法:

我要做的是在清单中添加时间戳作为注释

# 20130623 025200
每次我想强制刷新时就更新它

编辑:正如我在评论中指出的,浏览器将重新下载清单中明确列举的所有文件。对于不在清单中的文件(例如,HTML文件中引用但不在清单中的CSS或图像),默认过期日期优先


该算法在标准中有描述:

过期标头与appcache配合很好,请学习如何使用它们。@robertc即使您的评论被认为是一个聪明的混蛋,我也会对它们进行一些研究。过期标头与appcache配合很好,了解如何使用它们。@robertc即使你的评论被认为是一个聪明的家伙,我也会对它们做一些研究。“我知道如何通过简单地更改appcache清单中的一个字符,告诉浏览器再次下载缓存文件”。我已经说过我知道怎么做,但我的问题是,当它被更改时,我如何知道浏览器是否会正确地重新下载文件?@Jared浏览器会重新下载清单中明确列举的所有文件:对于清单中没有的文件,默认的到期日等优先于此,这正是我所希望的。我会编辑您的答案,将其包括在内,并将其标记为答案。“我知道如何通过简单地更改appcache清单中的一个字符来告诉浏览器再次下载缓存文件”。我已经说过我知道怎么做,但我的问题是,当它被更改时,我如何知道浏览器是否会正确地重新下载文件?@Jared浏览器会重新下载清单中明确列举的所有文件:对于清单中没有的文件,默认的到期日等优先于此,这正是我所希望的。我会编辑你的答案,将其包括在内,并将其标记为答案。