跳到主要内容

7.5.4. HTTP Versions and Component Ambiguity (HTTP 版本与组成部分歧义)

7.5.4. HTTP Versions and Component Ambiguity (HTTP 版本与组成部分歧义)

某些消息组成部分在不同 HTTP 版本中以不同方式表达. 例如, 请求目标的 authority 在 HTTP/1.1 中使用 Host 头字段发送, 在 HTTP/2 中使用 :authority 伪头. 若签名者发送 HTTP/1.1 消息并签名 Host 头字段, 但在到达验证者之前消息被转换为 HTTP/2, 签名将无法验证, 因为 Host 头字段可能被丢弃.

因此 HTTP 消息签名定义派生组成部分集合, 以单一方式获取所问值, 例如用 @authority 派生组成部分 (第 2.2.3 节) 代替 Host 头字段. 因此应用应尽可能优先使用此类选项的派生组成部分.