我想知道这个观察结果:
我第二次加载网站,firefox开发者工具中的网络模块告诉我,例如对于html文档:status = 304,type = html,size = 60kb。
type = js或css的其他一些资产也被标记为status = 304,但是大小> 0
我想知道为什么firefox似乎下载了一个未修改的资产。
对于图像,它似乎按预期工作:每当资产的类型= jpeg或png,状态= 304,而不是size = 0
对此有任何解释吗?
答案 0 :(得分:1)
这是Firefox开发人员工具中的bug。 “网络”面板中的“已转移”和“尺寸”列对t
响应无效。
“大小”列应显示资源的大小(如果压缩响应,则在解压缩后),无论是直接从缓存中检索,还是在304 Not Modified
响应后从缓存中检索,或从服务器。在您的情况下,html / css / js请求工作正常,但jpeg / png请求工作不正确,大小不应为0.
“已传输”列应显示通过网络传输的字节数。通常它小于“大小”,因为响应将被压缩。对于304
响应,“已传输”值将是一个非常小的数字,但永远不会为0(请求URL,请求标头,响应标头等)。
即使对于Firefox,它也不能始终如一地工作。在“FirefoxDeveloperEdition”中,对于304
响应,jpeg / png请求的工作方式与其他html / css / js请求完全相同。但是,在常用的“Firefox”中,“大小”为0,“已传输”为“ - ”。