前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >获取win11的操作系统信息

获取win11的操作系统信息

作者头像
曈曈too
发布2023-11-17 21:22:15
3090
发布2023-11-17 21:22:15
举报
文章被收录于专栏:瞳瞳too的学习笔记

User-Agent字符串

User-Agent字符串是在HTTP协议中使用的一个标头,用于标识请求端的软件环境信息。它告诉服务器发送请求的客户端的操作系统、浏览器类型和版本、硬件平台等信息。

如果你想知道更多关于UA的信息可以看

浏览器野史 —— UserAgent 列传【转载】 - 沉默的博客 (cmsblog.cn)

那么有人就会问了,既然ua可以,告诉服务器发送请求的客户端的操作系统,那应该能够获取Win11的操作系统信息,然而事实却不是这样的,因为us各种历史原因下的产物,微软官方已经正式确定不会更新win11的UA信息,这意味着我们将无法通过UA获取到win11操作系统的信息

既然我们无法通过ua识别win11,那有没有其他办法呢?答案是:有!

使用User-Agent客户端提示检测Windows 11

在 Microsoft Edge (和 Google Chrome) 中,网站可以通过User-Agent客户端提示 (UA-CH) 来区分Windows 11用户和Windows 10用户。 可以在以下 UA-CH 请求标头中找到此信息:

标头字段

指示Windows 10的值

指示Windows 11的值

Sec-CH-UA-Platform

Windows

Windows

Sec-CH-UA-Platform-Version

和 之间的 1.0.0 值 10.0.0

13.0.0 及更高版本

支持User-Agent客户端提示的浏览器

下表显示了哪些浏览器支持区分Windows 11和Windows 10。

浏览器

支持通过User-Agent客户端提示进行区分?

Microsoft Edge 94+

Chrome 95+

Opera

Firefox

Internet Explorer 11

用于检测Windows 11的示例代码

以下代码检测Windows 11:

代码语言:javascript
复制
navigator.userAgentData.getHighEntropyValues(["platformVersion"])
 .then(ua => {
   if (navigator.userAgentData.platform === "Windows") {
     const majorPlatformVersion = parseInt(ua.platformVersion.split('.')[0]);
     if (majorPlatformVersion >= 13) {
       console.log("Windows 11 or later");
      }
      else if (majorPlatformVersion > 0) {
        console.log("Windows 10");
      }
      else {
        console.log("Before Windows 10");
      }
   }
   else {
     console.log("Not running on Windows");
   }
 });

以上信息来自微软官方文档

我的博客即将同步至腾讯云开发者社区,邀请大家一同入驻:https://cloud.tencent.com/developer/support-plan?invite_code=n5z8bvazsyzw

文章目录

版权属于:瞳瞳too

本文链接:https://cloud.tencent.com/developer/article/2360135

本站未注明转载的文章均为原创,并采用 CC BY-NC-SA 4.0 授权协议,转载请注明来源,谢谢!

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-02-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 文章目录
相关产品与服务
云开发 CloudBase
云开发(Tencent CloudBase,TCB)是腾讯云提供的云原生一体化开发环境和工具平台,为200万+企业和开发者提供高可用、自动弹性扩缩的后端云服务,可用于云端一体化开发多种端应用(小程序、公众号、Web 应用等),避免了应用开发过程中繁琐的服务器搭建及运维,开发者可以专注于业务逻辑的实现,开发门槛更低,效率更高。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档