关于浏览器缓存,为优化速度加载网站

about browser cache, for optimize speed load website

本文关键字:优化 速度 加载 网站 浏览器 缓存      更新时间:2023-09-26

我正在尝试优化我的web应用程序的速度,并且我正在控制图像的加载。

我有一个名为webCache的属性,我用它来处理

if (!webCache) src += "?rand="+Math.random();
img.src =src;

如果webCache是假的,那么我更新src var值添加一个随机值通过使用random()然后,我将新的src值添加到对象图像的src属性。

我的问题是,如果webCache为真,则不执行条件if,并且同样执行img.src =src;。值是相同的,src值没有改变,但图像可以是另一个....浏览器在这里将如何表现?它会刷新图像吗?

也就是说,如果src值是相同的,但图像是另一个,浏览器将如何表现?

这将取决于图像第一次被服务时的http头。

服务器可能已经告诉浏览器总是重新获取图像,在一段时间内不重新获取图像,或者直到特定的时间点。

还可以提供ETag或Last-Modified标头,允许浏览器向服务器发出HEAD请求并检查是否应该下载图像或仅使用其本地副本。

一些相关的报头是

  • cache - control
  • last - modified
  • ETag

在google chrome中,您可以禁用缓存用于开发目的。按F12,点击右下角的转轮,选择"常规",然后勾选"禁用缓存"