Sec-CH-UA-Full-Version-List 标头

可用性有限

此特性不是基线特性,因为它在一些最广泛使用的浏览器中不起作用。

实验性: 这是一项实验性技术
在生产中使用此技术之前,请仔细检查浏览器兼容性表格

安全上下文: 此功能仅在安全上下文(HTTPS)中可用,且支持此功能的浏览器数量有限。

HTTP Sec-CH-UA-Full-Version-List 请求标头是一个用户代理客户端提示,它提供用户代理的品牌和完整版本信息。

Sec-CH-UA-Full-Version-List 标头以逗号分隔的列表形式,提供与浏览器关联的每个品牌的品牌和完整版本信息。

该标头可以在任何位置和使用任何名称包含“伪造”品牌。此功能旨在防止服务器直接拒绝未知用户代理,从而迫使用户代理谎报其品牌身份。

注意:这类似于Sec-CH-UA,但包含每个品牌的完整版本号而不是主要版本号。

头类型 请求标头客户端提示
禁止请求头 是 (Sec- 前缀)

语法

http
Sec-CH-UA-Full-Version-List: "<brand>";v="<full version>", …

该值是用户代理品牌列表中以逗号分隔的品牌及其关联的完整版本号。

指令

<品牌>

与用户代理关联的品牌,例如“Chromium”、“Google Chrome”。这可能是一个故意不正确的品牌,例如" Not A;Brand""(Not(A:Brand"(实际值预计会随时间变化且不可预测)。

<完整版本>

完整的版本号,例如 98.0.4750.0。

描述

品牌是用户代理的商业名称,例如:Chromium、Opera、Google Chrome、Microsoft Edge、Firefox 和 Safari。一个用户代理可能关联多个品牌。例如,Opera、Chrome 和 Edge 都基于 Chromium,它们都将在 Sec-CH-UA-Full-Version-List 标头中提供这两个品牌。

该标头允许服务器根据共享品牌以及各自特定构建中的特定定制来定制其响应。

示例

使用 Sec-CH-UA-Full-Version-List

服务器通过在对客户端的任何请求的响应中包含Accept-CH来请求Sec-CH-UA-Full-Version-List标头,并使用所需标头的名称作为令牌

http
HTTP/1.1 200 OK
Accept-CH: Sec-CH-UA-Full-Version-List

客户端可以选择提供提示,并将 Sec-CH-UA-Full-Version-List 标头添加到后续请求中,如下所示

http
GET /my/page HTTP/1.1
Host: example.site

Sec-CH-UA: " Not A;Brand";v="99", "Chromium";v="98", "Google Chrome";v="98"
Sec-CH-UA-Mobile: ?0
Sec-CH-UA-Full-Version-List: " Not A;Brand";v="99.0.0.0", "Chromium";v="98.0.4750.0", "Google Chrome";v="98.0.4750.0"
Sec-CH-UA-Platform: "Linux"

规范

规范
用户代理客户端提示
# sec-ch-ua-full-version-list

浏览器兼容性

另见