最近回顾HTTP缓存知识的时候发现了一个问题,设置了强缓存和协商缓存的文件,点击浏览器的刷新按钮的时候在chrome和firefox中的表现不一样。具体表现为chrome走强缓存没有再次发起请求。firefox却在强缓存没有失效的情况下发了请求,返回了304走了协商缓存。

chrome请求截图:

firefox请求截图:

上面两种表现截然相反,但是并没有错误。主要原因在于浏览器点击刷新按钮时是否使用强缓存的实现各个浏览器不同。参考盗图如下:

通过测试发现firefox的http缓存完全符合上图描述,所以不是firefox的强缓存失效,而是在firefox中本来点击刷新按钮就应该忽略强缓存。而chrome刷新按钮使用强缓存是对http缓存的一种优化。所以两者应该都是对的

在firefox没有304的验证在目前来说还是很有用的,现在大部分网页都是工程化的结果,打包出来的文件名称都带上了hash,只要内容变了那么文件名一定会变化,反过来说文件名没有变那么内容一定没有改变,再去验证304就少了很多必要。

关于304的非必要性,详情可查参考1。

参考

[译] 这项浏览器调整使 Facebook 收到的网络请求减少了 60%

彻底理解浏览器缓存机制

http协议请求响应头中参数的疑问??

浏览器缓存机制

http强缓存在firefox和chrome之间的差异相关推荐

  1. eversync safari_推荐好用的firefox和chrome的书签同步工具

    Icloud书签是苹果apple公司为了兼容与windows桌面设备的书签同步功能而开发的一款chrome插件.我们都知道虽然苹果在移动设备的领域处于绝对的统治地位,但是桌面设备windows操作系统 ...

  2. 将搜狗浏览器收藏夹导入到IE、Firefox、Chrome

    搜狗浏览器收藏夹导入.导出的文件格式是.xml,与IE.Firefox.Chrome等的导入.导出使用的.htm格式不同.于是要把搜狗浏览器收藏夹导入到IE.Firefox.Chrome也就需要做一些 ...

  3. IE安全防护方面强于Firefox和Chrome

    为什么80%的码农都做不了架构师?>>> 微软公布了一个通过比较Microsoft IE.Mozilla Firefox和Google Chrome 等浏览器抭流氓.钓鱼以及其产生他 ...

  4. Firefox、Chrome 盘助手

    From:https://www.runningcheese.com/baiduyun IDM 下载地址:http://www.ucbug.com/soft/26392.html 定制 Firefox ...

  5. Firefox 和 Chrome 性能测试对比

    Google 于上周推出了 Chrome 75 的首个稳定版,更新说明里面虽然一如既往地写到"包含性能改进",但对包括笔者在内的大部分用户而言,这些所谓的改进其实很难感知. 所以才 ...

  6. IE、Firefox、Chrome比较

    IE.Firefox.Chrome比较 IE的兼容性,Firefox的插件,Chrome的速度. Firefox适合编辑,Chrome适合浏览,只有IE才能完美的支持网银之类的一些操作. 个人观点:如 ...

  7. [译文] 因为 PWAs, Android 和 Chrome 之间会有冷战吗?

    what? 你怎么能这样说? 安卓拥有当今最好的 PWA 体验啊! 安卓? 还是安卓上的 Chrome? 而且......这是最好的体验吗? Google 目前就像是一颗恒星,有不同的行星在它的轨道上 ...

  8. [Python爬虫] Selenium自动访问Firefox和Chrome并实现搜索截图

    前两篇文章介绍了安装,此篇文章算是一个简单的进阶应用吧!它是在Windows下通过Selenium+Python实现自动访问Firefox和Chrome并实现搜索截图的功能.         [Pyt ...

  9. JavaScript中的window.close在FireFox和Chrome上不能正常动作的解决方法

    原文:JavaScript中的window.close在FireFox和Chrome上不能正常动作的解决方法 JS中关闭窗口的方法window.close()在IE上能够正常动作,而在FireFox和 ...

最新文章

  1. 计算机精英协会考核题 —— 第三题:斐波那契数
  2. 设计模式——设计模式之禅day1
  3. php根据指定字段去重,php二维数组根据某个字段去重
  4. java判断时间是否在时间段内_具有C语言基础,利用半年时间学习Java是否够用
  5. js中四种创建对象的方式
  6. Docker+Jenkins持续集成环境(2)使用docker+jenkins构建nodejs前端项目
  7. 【树莓派】iptables相关配置
  8. 通过代码设置radiobutton不同方位图标的两种方法
  9. Windows编程入门
  10. Spark SQL练习
  11. MAC下微软Word修改样式为宋体却显示SimSun-Extb的解决办法
  12. 【机器学习|数学基础】Mathematics for Machine Learning系列之矩阵理论(20):方阵函数
  13. 【数据库】数据字典表
  14. 2021阿里云开发者大会——时隔两年平头哥有哪些杰作?
  15. 国产系统银河麒麟(龙芯MIPS)远程访问自研windows程序
  16. 在 Windows 10 中如何查看系统的激活状态?
  17. linux学习笔记(6)磁盘管理
  18. @EqualsAndHashCode(callSuper = true/false) 作用
  19. 【推荐】2022年公用事业行业研究报告产业发展前景市场投资行情分析白皮书(附件中为网盘地址,报告持续更新)
  20. 大数据技术与应用4-4MapRuduce

热门文章

  1. ssh登陆报错“WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!”的解决方法
  2. chrome面板介绍
  3. 微信小程序开发——超链接或按钮点击跳转到其他页面失效
  4. WPF 实现水纹效果
  5. css实现简单的告警提示动画效果
  6. Maven实战:Pom.xml详解
  7. IIS7开启gZip动态压缩
  8. 解决tableViewCell分割线不到左边界的问题
  9. UVa 208 Firetruck【回溯】
  10. android多点触控自由对图片缩放