文章目录
HTTP/2 协议-服务端主动推送消息
这篇文章介绍一下 HTTP/2
的服务端消息推送功能,它可以很大程度的提升客户的体验,它与之前介绍的 Websocket
消息推送有很大的不同,讨论一下 HTTP/2
协议中的 PUSH_PROMISE
服务端推送帧实现原理。
1.服务器推送的意义
- 提前将资源推送到浏览器
- 推送可以基于已发送的请求,例如客户端请求
html
,服务端可以主动推送js
、css
文件
2.服务端推送的基本实现原理
- 推送资源必须对应一个请求
- 请求由服务端
PUSH_PROMISE
帧发送 - 响应在
Stream ID
的Stream
中发送,并且服务产生的Stream ID
是偶数
3. HTTP/1.1 中获取资源示意图
Tips:实际页面会有很多
js
、css
等文件请求。