“无人认领”服务器推送的IIS服务器端后果是什么?

时间:2016-11-14 09:06:54

标签: asp.net iis http2 server-push

HttpResponse.PushPromise执行HTTP/2 Server Push.

一个常见的推荐用例是,在提供html页面的过程中,推送css,js或images等辅助资源。

因此,这在初始请求中正常工作,通过单个请求/连接返回html和所有其他资源。

现在发生辅助导航。浏览器请求html并且服务器返回它,并且还推送其他资源。但浏览器已经缓存了其他资源。这些资源现在进入“无人推动”的状态。

那么当无人认领的推送发生时,服务器端会发生什么?

1 个答案:

答案 0 :(得分:0)

我无法确定IIS实施中会发生什么。

但一般的逻辑是,浏览器会看到推送的流(推送承诺框架),并认识到它对它不感兴趣。因此,它会将流的重置帧发送到服务器。服务器接收流的重置帧,该重置帧将该推送流的HTTP / 2流状态置于重置状态。如果还有东西在服务器上写入推送的流,它将因此而失败并且推送将结束。