为什么 Chrome 发送 sec-ch-ua 和 sec-ch-ua-mobile 请求标头,尽管"Experimental Web Platform features"被禁用



我在使用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/)。

我找不到"实验平台特征";标志,但我认为它更多的是关于实验性的Chrome功能,而不是实验性的web标准。因此,尽管该标志背后的标准成熟或稳定,但它可能从未打算禁用客户端提示。实验性标准一直在当前的浏览器中实现,因为这是获得web开发人员对该标准实际含义的反馈的唯一途径。

根据Chrome的平台状态,自Chrome 89以来,客户端提示是默认启用的,这似乎是User-Agent字符串缩减这一更大问题的先决条件,这可能是它迅速实现的原因之一。

最新更新