JHipster CachingHttpHeadersFilter timeToLive 设置和生产版本

JHipster CachingHttpHeadersFilter timeToLive settings and production releases

我正在使用 JHipster 2.27.2

在进行生产发布时,我注意到由于 CachingHttpHeadersFilter 设置的 Http Headers,旧的 html 模板(即 html 模板在 ui-router 个州中引用)正在徘徊。显然用户可以手动清除浏览器缓存,但这在处理大量未知用户时并不总是可行的。

除了通过将 timeToLiveInDays 设置为零或更改 app.js 文件中的 cachebuster 设置以包含 html 模板来完全删除 html 缓存之外,还有另一种方法可以采取html 文件缓存的优势,但同时确保用户的 html 文件保持最新?

静态资产(图像、css、..)由前端构建过程(参见 gulp-rev)进行版本控制,以避免缓存陈旧资产。我不认为 HTML 模板是版本化的(2.x 是相当旧的版本)但是 angular 使用 XHR 加载它们所以缓存破坏器应该适用于它们。

对于其他 HTML 文件,您可能需要查看 WebConfigurer#initCachingHttpHeadersFilter() 以查看它使用哪些 URL 模式并将这些其他 HTML 文件存储在不同的文件夹下或调整模式以排除它们。