html - html 页面上的任何元标记是否会影响获取脚本、链接和任何其他资源的缓存策略?

标签 html browser-cache meta

要保证网络服务器上托管的单页应用程序 (SPA) 在发布该应用程序的新版本后不会被缓存,应仔细检查该应用程序实际获取的实体请求的方式。

但问题是 SPA 也包含 html,虽然现在你可以看到静态页面只有 html 一样短,带有正文和两个链接 - 一个用于 css,一个用于 javascript,但我们仍然需要使该页面的缓存无效也是如此。

最简单的方法是通过 meta 添加相关的 http header 标签(如 Pragma: no-cache、Pragma: no-store 等)。正如上面提供的链接中的答案之一所述,这种方法有效,尽管并不理想。

我担心的是 - 我们是否保证在所有浏览器中都可以在非缓存页面上获取缓存资源?换句话说,如果我的 html 页面没有缓存,这会影响脚本和链接的实际缓存方式吗?

最佳答案

要回答“从非缓存页面请求的资源仍然能够来自缓存吗?”的问题,您的 HTML 页面缓存设置(无论是通过服务器标题、元标记还是 IIS/htaccess 完成)绝对没有与如何请求/提供链接资源有关。如果您设置从缓存中检索 Javascript、CSS 和图像,浏览器将单独查看它们,而不是将页面的缓存控制应用于它们。可能有一些不起眼的一次性浏览器会搞砸这一点,但在主要浏览器上通常不会出现这种情况

关于html - html 页面上的任何元标记是否会影响获取脚本、链接和任何其他资源的缓存策略?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28112549/

相关文章:

HTML错误: Refused to load the script because it violates the following Content Security Policy directive

image - Golang 图像 iptc 元数据

html - 为什么IE7下两个div之间有空格?

html - 如何阻止 float div 换行到下一行 - 尝试了一切

html - css text-decoration 下划线在应用于输入按钮的文本时不起作用

php - Google Speed Leverage 浏览器缓存

Mysql 查询 3 个表和用户元

html - CSS - 当 Margin 无效时要查找的内容

css - 在 CSS 中缓存破坏图像

asp.net-mvc - 我是否应该将可能已缓存在浏览器中的文件捆绑到 ASP.Net 中?