浏览器缓存 - 为什么我会在缓存时看到javascript文件的重复http请求?

时间:2016-02-19 12:01:44

标签: javascript http iis internet-explorer-11 browser-cache

我正在尝试提高几个网页的性能,并想了解是否我的内部应用程序是否通过I.E缓存javascript文件。所以,我有小提琴手去看服务器的请求。

我可以看到,每次加载创建客户页面时,fiddler中相同数量的请求,对于带有Result' 200'的相同文件。 (而不是304 - 未修改)来获取javascript文件。这些包括jquery,淘汰赛和一些自定义的。

我研究了请求和响应标题(下面),但我看到缓存控制没问题,没有任何传达它的东西都没有缓存。但是不明白为什么这些相同的http请求出现在fiddler中(如果它被缓存,它会向服务器发送请求)。

每次去服务器都可以看到相同的请求,这让我想知道:

  1. 浏览器是否缓存这些?
  2. 如果没有,这些至少是在IIS中缓存的吗?
  3. 如何避免这些不必要的http请求,因为这些javascript文件根本没有变化?
  4. enter image description here

    非常感谢。

1 个答案:

答案 0 :(得分:4)

该文件的请求Pragma: no-cache标题(位于图片顶部,“请求标题”下方两行),告诉浏览器和服务器您don't want to use the cached copy

你会想看看你是如何提出这个请求来找出那个标题的原因,然后摆脱它。

的可能性:

  • 您是通过某种AMD或其他配置为不使用缓存的动态加载机制加载它

  • 您正在运行带有“禁用缓存”选项的开发工具,其中大多数已打开