3

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

这一直在我脑海中萦绕(通常是在查看慢速 Web 应用程序背后的原因时出现)。

4

2 回答 2

3

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

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

对我来说,这是有道理的。您不想使用当前呈现的内容作为事实来源,因为显然 HTML 可以动态操作。如果您不能使用它,那么 http 缓存将是下一个可能的源候选者。如果源在 cahce 中不可用,则源的后续 GET 似乎是唯一的选择。

然而,这确实引入了这里提出的另一个有趣的 delim 。

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

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

于 2018-10-16T16:26:05.130 回答
0

您需要为实时网页执行“检查元素”。Show-code 重新加载页面以显示源代码而无需修改。

于 2016-12-19T19:41:04.117 回答