HTTP2服务器推送如何知道推送什么?

时间:2016-06-22 13:05:38

标签: http2 server-push

服务器推送通过在响应请求之后发送js,css,图像等来工作,而不是等待客户端接收html,解析它并请求资源,从而节省往返。但是,如果客户端在一分钟前获取example.com/about时已经下载了相同的文件,那么推送example.com的js,css,图像,字体等是完全浪费带宽,因为客户端已经有了那些文件。

为每个请求保持状态服务器端似乎很昂贵,并且由于HTTP是无状态的,因此不能完成它的工作方式。据推测,客户会在随后的访问中重新请求html,以查看是否有任何更改。

HTTP2服务器如何知道要推送哪些文件?

1 个答案:

答案 0 :(得分:1)

有几种技巧可供选择。浏览器可以例如重置流。或者可以使用缓存摘要。

以下是有关该信息的更多信息:

https://www.shimmercat.com/en/blog/articles/cache-digests/

就在今天,有些人正在就缓存摘要进行有趣的对话:

https://lists.w3.org/Archives/Public/ietf-http-wg/2016AprJun/0371.html