Http2 http/2推送承诺授权伪头

Http2 http/2推送承诺授权伪头,http2,request-promise,Http2,Request Promise,http2 rfc表示: 所有HTTP/2请求必须只包含一个有效值 :方法、:方案和:路径伪头字段 (注意不包括权限) 对于推送承诺: 服务器必须在:authority伪头字段中包含一个值 服务器对其具有权威性 我的问题是,对于服务器推送承诺请求帧,服务器是否需要始终包含authority伪头,或者如果它决定包含它,那么它必须是服务器的权威吗?我认为:authority头必须始终包含在推送承诺帧中,如果证书和IP地址相应地解析,则客户端可能会对不同的主机名使用相同的连接 通过添加权限框架,客户机

http2 rfc表示:

所有HTTP/2请求必须只包含一个有效值 :方法、:方案和:路径伪头字段

(注意不包括权限)

对于推送承诺:

服务器必须在:authority伪头字段中包含一个值 服务器对其具有权威性


我的问题是,对于服务器推送承诺请求帧,服务器是否需要始终包含authority伪头,或者如果它决定包含它,那么它必须是服务器的权威吗?

我认为
:authority
头必须始终包含在
推送承诺
帧中,如果证书和IP地址相应地解析,则客户端可能会对不同的主机名使用相同的连接

通过添加权限框架,客户机将在被推送的资源和需要检索的资源之间精确匹配

如果没有
:authority
头,客户端可能会认为推送的资源是
https://example.com/background.png
,但稍后从
example.com
下载的HTML中会发现资源是
https://images.example.com/background.png
;因为URI不匹配,所以客户端将发出对该资源的请求,而不是使用推送的资源


除此之外,您可以尝试在没有
:authority
的情况下发出
PUSH_PROMISE
,并查看各种浏览器的行为:有时使用实现行为来加强规范。

第一个是关于请求,第二个是关于响应,否?这里提到的四个伪头字段仅定义为请求伪头字段。仅定义了一个响应伪标头字段-“状态”