为什么View Source会发出新的HTTP请求?

时间:2016-12-19 19:35:42

标签: google-chrome http firefox view-source

我注意到,当您HTTP为您已加载的网页时,Firefox和Chrome都会发出新的view the source请求。当页面本身加载缓慢或根本不加载时,它尤其令人讨厌。 这是为什么?他们不会拥有已缓存的原始页面的现有来源吗?它是基于Cache-Control标题吗?

这已经在我脑海中浮现了一段时间(通常,在查看慢速网络应用背后的内容时会出现)。

2 个答案:

答案 0 :(得分:1)

根据link,在Chrome的上下文中,它确实基于Cache-Control标头。

  

... view-source从http缓存中获取html源   并漂亮地打印出来,但是对于不在HTTP缓存中的页面,它被“强制”为   提出新请求。

对我来说,这很有意义。您不希望使用当前呈现的内容作为真相的来源,因为显然可以动态地处理HTML。如果您不能使用它,则http缓存将是该源的下一个候选对象。如果无法从cahce获得该源,则该源的后续GET似乎是唯一的选择。

但这确实引入了另一个有趣的delima提出的here

  

再次请求URL是没有意义的,因为不能保证第二个请求期间收到的源将匹配第一个请求期间收到的源。

我想这是有意识的权衡,目的是确保始终以某种形式满足视图源请求。

答案 1 :(得分:0)

你需要做"检查元素"对于实时网页。显示代码重新加载页面以显示源代码而无需修改。