【问题标题】:Why does View Source issue a new HTTP request?为什么 View Source 会发出新的 HTTP 请求?
【发布时间】:2016-12-19 19:35:42
【问题描述】:

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

这在我脑海中已经有一段时间了(通常是在查看慢速网络应用背后的原因时出现)。

【问题讨论】:

    标签: google-chrome http firefox view-source


    【解决方案1】:

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

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

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

    然而,这确实引入了另一个有趣的 deima 引发 here

    再次请求 URL 没有意义,因为无法保证在第二次请求期间收到的来源与在第一次请求期间收到的来源相匹配。

    我想这是一种有意识的权衡,旨在确保始终以某种形式满足查看源请求。

    【讨论】:

      【解决方案2】:

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

      【讨论】:

      • 这不是答案
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-06-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-15
      • 1970-01-01
      相关资源
      最近更新 更多