Javascript 使用XHR或Fetch API的HTTP/2服务器推送

Javascript 使用XHR或Fetch API的HTTP/2服务器推送,javascript,html,http2,Javascript,Html,Http2,我想在使用浏览器XMLHttpRequest或FetchAPI请求特定HTML片段时“推送”其他资源(主要是HTML片段,但也包括CSS和图像)。我知道如何在服务器端构造HTTP/2响应,也知道如何将服务器发送的资源推送到浏览器缓存中以进行常规页面加载,但我的问题是关于通过JavaScript以编程方式启动的HTTP/2服务器推送响应,例如,我可以在Ajax请求上推送额外资源吗,当我在后续的XHR请求中显式地获取这些资源时(条件请求的缓存控制和其他头允许),是否依赖于从浏览器缓存中提供的推送资源

我想在使用浏览器XMLHttpRequest或FetchAPI请求特定HTML片段时“推送”其他资源(主要是HTML片段,但也包括CSS和图像)。我知道如何在服务器端构造HTTP/2响应,也知道如何将服务器发送的资源推送到浏览器缓存中以进行常规页面加载,但我的问题是关于通过JavaScript以编程方式启动的HTTP/2服务器推送响应,例如,我可以在Ajax请求上推送额外资源吗,当我在后续的XHR请求中显式地获取这些资源时(条件请求的缓存控制和其他头允许),是否依赖于从浏览器缓存中提供的推送资源?如果已缓存推送的资源响应,是否会取消这些响应

当我在后续的XHR请求中显式地获取这些资源时(条件请求的缓存控制和其他头允许),我是否可以在Ajax请求上推送额外的资源,并依靠浏览器缓存提供的推送资源

对。然而,尤其是认证与非认证连接

如果已缓存推送的资源响应,是否会取消这些响应

虽然非常依赖浏览器,但也可能在取消请求返回时已经下载