Sec-CH-UA
Sec-CH-UA
用户代理客户端提示 请求头提供用户代理的品牌和重要版本信息。
Sec-CH-UA
标头以逗号分隔的列表形式提供与浏览器关联的每个品牌的品牌和重要版本。
品牌是用户代理的商业名称,例如:Chromium、Opera、Google Chrome、Microsoft Edge、Firefox 和 Safari。用户代理可能具有多个关联的品牌。例如,Opera、Chrome 和 Edge 都基于 Chromium,并且将在 Sec-CH-UA
标头中提供这两个品牌。
重要版本 是用于区分品牌主要版本的“营销”版本标识符。例如,具有完整版本号“96.0.4664.45”的 Chromium 版本的重要版本号为“96”。
因此,该标头允许服务器根据共享品牌及其各自版本中的特定自定义设置自定义其响应。
Sec-CH-UA
是一个 低熵提示。除非被用户代理权限策略阻止,否则它会默认发送,而无需服务器通过发送 Accept-CH
来选择加入。
标头可以在任何位置和任何名称下包含“伪造”品牌。这是一项旨在防止服务器直接拒绝未知用户代理的功能,迫使用户代理对其品牌标识进行虚假陈述。
注意: Sec-CH-UA-Full-Version-List
与 Sec-CH-UA
相同,但包括每个品牌的完整版本号,而不是重要版本号。
语法
用户代理品牌列表中品牌的逗号分隔列表及其关联的重要版本号。单个条目的语法具有以下格式
Sec-CH-UA: "<brand>";v="<significant version>", ...
指令
<brand>
-
与用户代理关联的品牌,例如“Chromium”、“Google Chrome”或故意错误的品牌,例如
"Not A;Brand"
。 <significant version>
-
与可区分的网络公开功能关联的“营销”版本号。
示例
Sec-CH-UA
是一个 低熵提示。除非用户代理策略明确阻止,否则它将在所有请求中发送(无需服务器通过发送 Accept-CH
来选择加入)。
Chromium、Chrome、Edge 和 Opera 桌面浏览器的字符串显示如下。请注意,它们都共享“Chromium”品牌,但还有一个指示其来源的附加品牌。它们还有一个故意错误的品牌字符串,该字符串可能出现在任何位置并具有不同的文本。
Sec-CH-UA: "(Not(A:Brand";v="8", "Chromium";v="98"
Sec-CH-UA: " Not A;Brand";v="99", "Chromium";v="96", "Google Chrome";v="96"
Sec-CH-UA: " Not A;Brand";v="99", "Chromium";v="96", "Microsoft Edge";v="96"
Sec-CH-UA: "Opera";v="81", " Not;A Brand";v="99", "Chromium";v="95"
规范
规范 |
---|
用户代理客户端提示 # sec-ch-ua |
浏览器兼容性
BCD 表格仅在启用 JavaScript 的浏览器中加载。
另请参阅
- 客户端提示
- 用户代理客户端提示 API
- 使用用户代理客户端提示改进用户隐私和开发者体验 (developer.chrome.com)
Accept-CH
- HTTP 缓存 > Vary 和
Vary