@程序员,一文掌握 Web 应用中的图片优化技巧!( 十 )
这个现象跟chrome的lazy-loading功能的实现机制有关。
首先,浏览器会发送一个预请求,请求地址就是这张图片的URL,但是这个请求只拉取这张图片的头部数据,大约2kb,具体做法是在请求头中设置range: bytes=0-2047。
而从这段数据中,浏览器就可以解析出图片的宽高等基本维度,接着浏览器立马为它生成一个空白的占位,以免图片加载过程中页面不断跳动。这很合理,总不能为了一个懒加载,让用户牺牲其他方面的体验吧?这个请求返回的状态码是206,表明客户端通过发送范围请求头Range抓取到了资源的部分数据。
然后,在用户滚动到图片附近时,再发起一个请求,完整地拉取图片的数据下来,这个才是我们熟悉的状态码200请求。可以预测到,如果以后这个属性被普遍使用,那一个服务器要处理的图片请求连接数可能会变成两倍,对服务器的压力会有所增大,但时代在进步,我们可以依靠HTTP2多路复用的特性来缓解这个压力,这时候就需要技术负责人权衡利弊了。
推荐阅读
- 电子竞技|和平精英:掌握这些技巧,分分钟成车神
- edg战队|王者荣耀:一招鲜吃遍天?1个英雄想打5个位置?掌握这几个完全可以
- 网游|颠覆你认知的网游土豪,程序员加班为他改游戏,还送专属服务器
- 网易|永劫无间诡异宕机事件:网易机房过热,程序员竟然祭出了干冰?
- 法术|双城之战:羁绊、海克斯强化、装备一文看懂
- 甄姬|甄姬三技能的稳定性加强,掌握5个玩法技巧对上分有帮助
- 地下城与勇士|DNF:一次给3张传说卡片!讨伐战S级奖励技巧,掌握两个要领就行
- 热血传奇|热血传奇:提升幸运属性实在太难?只是你没掌握到方法
- 庄周|敌方边路选择庄周应该如何应对?选择这些对位英雄就能掌握先机!
- 手机游戏|LOL手游掌握了流量密码,社交玩法才是国内手游的主旋律?