【问题标题】:getting a http-304-status, but still data is transfered获得 http-304-status,但仍传输数据
【发布时间】:2017-03-09 16:59:45
【问题描述】:

我想知道这个观察:

我第二次加载网站,firefox developer-tools 中的网络模块告诉我,例如对于 html 文档:status=304, type=html, size=60kb。

其他一些 type=js 或 css 的资产也被标记为 status=304,但 size>0

我想知道为什么 Firefox 似乎下载了未修改的资产。

对于图像,它似乎可以按预期工作:只要资产的 type=jpeg 或 png,status=304,而不是 size=0

对此有什么解释吗?

【问题讨论】:

  • 您的问题回答正确了吗?如果是,也许您可​​以“接受”我的回答?
  • 哦是的...对不起...完成...

标签: http browser http-status-code-304


【解决方案1】:

这是 Firefox 开发者工具中的 bug。对于304 Not Modified 响应,“Network”面板中的“Transferred”和“Size”列不正确。

“大小”列应该显示资源的大小(如果响应被压缩,则在解压缩后),无论是直接从缓存中检索,还是在304响应后从缓存中检索,或者从服务器检索。在您的情况下,html/css/js 请求工作正常,但 jpeg/png 请求工作不正确,大小不应为 0。

“已传输”列应显示通过网络传输的字节数。通常它小于“Size”,因为响应将被压缩。对于304 响应,“transferred”值将是一个非常小的数字,但绝不会为 0(请求 URL、请求标头、响应标头等)。

即使对于 Firefox,它也不能始终如一地工作。在“FirefoxDeveloperEdition”中,对于304 响应,jpeg/png 请求的工作方式与其他 html/css/js 请求完全相同。但是,在常用的“Firefox”中,“Size”为0,“Transferred”为“-”。

【讨论】:

    猜你喜欢
    • 2015-07-12
    • 2023-04-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-10
    • 1970-01-01
    相关资源
    最近更新 更多