另一方面,页面的 DOMContentLoaded 和 Load 时间有所提升(在 Network 面板中,没有截图) 。这是意料之中的,客户端在请求 HTML 之后需要同时接收 HTML 和 API 的响应 。这并不影响页面与资源的总体加载时间变短 。
Demo 终究只是 demo 。推送 API 比推送静态资源复杂许多,具体在于大多数 API 是需要带参数的 。即便只推送 GET 方法的 API,也需要带上 query string 和 header 里(包括 Cookie)的参数 。
如果你好奇怎么验证 server push 有没有生效,请打开 Network 面板,你会看到一排漂亮的「Push」:

文章插图
写在最后Server push 还有许多有趣的地方,限于篇幅不能一一赘述 。
最后我补充两点:
- 调试 server push 的正确姿势是用 Chrome 打开 chrome://net-internals/#http2,发了什么帧,收到什么帧,一目了然;
- 只要证书匹配,server push 也可以推送其他 host 的资源 。
【HTTP2.0中的Server Push】
推荐阅读
- 聊聊java中的进制问题
- 一文带你揭穿葡萄酒中的山寨货、水货、假货
- 西游记中的善恶 西游记最无辜的妖怪
- 5张图彻底理解Python中的浅拷贝与深拷贝
- 茶叶水洗脸好处多
- 茶中的氟化物过量摄入会导致骨质疏松症
- 招聘|职场中的女性该如何注意自己的妆容及言行举止
- 晚饭喝杯黑砖茶有益健康
- BIOS里的csm是什么意思?
- 自动挡中的手自一体 手自一体的车怎么开
