为什么 Chrome 会发送 sec-ch-ua 和 sec-ch-ua-mobile 请求标头,尽管“实验性 Web 平台功能”已禁用

我有使用 87.0.4280.88 测试的 Chrome 的情况,在某些情况下 Chrome 会发送 sec-ch-uasec-ch-ua-mobile 请求标头,尽管 chrome://flags/#enable-experimental-web-platform-features 设置为“禁用”。

例如:

sec-ch-ua: "Google Chrome";v="87", " Not;A Brand";v="99", "Chromium";v="87"
sec-ch-ua-mobile: ?0

发生这种情况时,摆脱这些标头的唯一方法是使用参数 --disable-features=UserAgentClientHint 启动 Chrome。

有人对此有解释吗?据我了解,这些功能仍处于试验阶段,规范正在进行中( https://wicg.github.io/ua-client-hints/ )。

stack overflow Why is Chrome sending sec-ch-ua and sec-ch-ua-mobile request headers although "Experimental Web Platform features" are disabled
原文答案

答案:

作者头像

我找不到“实验性平台功能”标志背后的功能列表,但我认为它更多的是关于实验性Chrome 功能而不是实验性网络标准,所以这个标志可能从未打算禁用客户提示,尽管其背后的标准成熟或稳定。实验性标准一直在当前浏览器中实施,因为这是获得 Web 开发人员对标准实际影响的反馈的唯一途径。

根据 Chrome 的平台状态, client hints are enabled by default since Chrome 89 似乎是更大问题 User-Agent string reduction 的先决条件,这可能是它被快速实施的原因之一。

相关问题