详细介绍UA中包含的信息,以电脑版chrome、手机版QQ浏览器、手机QQ的UA为例进行介绍。介绍了常规浏览器包含的信息,以及非浏览器APP包含的信息
图244-1:userAgent
userAgent是什么,UA中包含用户的哪些信息?对于网站的站长来说,无论你是否具备专业知识,都有必要了解你能够从用户那里获得哪些信息。对于网页的访问者(用户)来说,同样有必要了解自己在浏览网页时,自己的哪些信息会被网站获取。本文就来解答这个问题。
起因
本站的源代码是本人自己独立编写的,我知道用户在浏览网页的时候会向服务器提交用户的UA信息。在源代码的规划阶段就将用户的UA信息的使用考虑在内,从UA信息中可以判断用户使用的是移动设备还是PC设备,从而提供用户移动页面或者PC页面。大家在浏览我的网站的时候会发现,同样的网址,从电脑上面打开和手机上面打开版面是不同的,相同的网址不同的版面就是通过用户的UA信息实现的。
用户的UA信息的结构是复杂的,理论上说用户的浏览器可以提交任何结构的UA信息,不过UA结构的多样性必然会给UA的使用者带来麻烦,因此大部分浏览器的UA信息会按照某种约定的规律设计。尽管如此,由于设备和浏览器的复杂性,要解析每一个UA信息仍旧面临不小的困难,因此在本站的代码编写过程中,除了通过UA信息判断用户是移动设备还是PC设备外,并未做进一步的处理,简单的将UA信息保存到数据库中。
本文开篇时说了,作为一名站长很有必要知道UA信息中到底包含哪些信息,于是本人经过研究后开发了UA解析工具,方便自己使用,也方便其它用户使用。
那么UA中包含哪些信息呢?下面是3条UA信息,下面的介绍将以此为例。
chrome浏览器:Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.103 Safari/537.36
手机版QQ浏览器:Mozilla/5.0 (iPhone; CPU iPhone OS 12_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0 MQQBrowser/9.2.2 Mobile/15E148 Safari/604.1 MttCustomUA/2 QBWebViewType/1 WKType/1
手机QQ:Mozilla/5.0 (iPhone; CPU iPhone OS 12_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 QQ/8.0.0.472 V1_IPH_SQ_8.0.0_1_APP_A Pixel/640 Core/WKWebView Device/Apple(iPhone 5S) NetType/WIFI QBWebViewType/1 WKType/1
常见信息
图244-2:浏览器和内核信息示例
UA信息中常见的信息如下。
1、浏览器信息。浏览器名称,如:Chrome、MQQBrowser、QQ(顿号分割的三部分依次代表上面的三个UA信息,下同)。浏览器版本号,如:73.0.3683.103、9.2.2、8.0.0.472。
2、浏览器内核信息。内核名称,如:WebKit(来自AppleWebKit)、WebKit、WebKit。内核版本号,如:537.36、605.1.15、605.1.15。
3、操作系统。操作系统名称,如:Windows、iOS(来自iPhone OS)、iOS。操作系统版本号,如:7(来自NT 6.1)、12.2、12.2。
选择性信息
UA信息中的选择性信息,指可能含有也可能不含有的信息。
1、CPU信息。CPU信息指的是CPU的类型,CPU类型有很多种,有些已经淘汰,比如:16位、32位,有的不是民用。上面的三个UA中都不含有CPU信息。CPU信息形如amd64。
移动设备信息
图244-3:设备和APP信息示例
移动设备会有一些特有的信息,本小节介绍常见的信息。
1、设备名称。如:iPhone、iPad、SM-T377A(三星的一款手机)、PlayStation 4(PS4游戏机)。
2、设备类型。如:mobile(手机)、tablet(平板电脑)、console(不清楚是什么)。
3、设备厂商。如:Apple(苹果公司)、Huawei(华为)、Sony(索尼)。
APP信息
如果用户不是采用浏览器打开页面,UA中还会包含用户使用的的APP信息。比如:QQ、微信、支付宝。现在的手机APP中有很大比例是拥有打开网页功能的,由于种类太多,本工具只对常见的APP进行了解析,后续如果有需要将增加解析的APP种类。
1、APP名称。手机APP的名称,上面第三条UA的“QQ”。
2、APP版本号。手机APP对应的版本号,上面第三条UA的“8.0.0.472”。
其它信息
在UA信息中,主要是手机APP的UA,会包含很多其他的信息,这些信息的种类纷繁复杂,本工具取出了两种相对常见的信息进行了解析。
1、联网方式。如:wifi、4G、2G。
2、APP的语言。如:zh_CN、zh-Hans。
其它信息中还有一些某个APP才含有的信息,比如:上面第三个UA,Pixel/640表示屏幕的像素宽度,QBWebViewType/1和WKType/1估计只有腾讯的开发人员才知道是什么意思。
在浏览器内核部分,周围还有其它字符,如:AppleWebKit/537.36 (KHTML, like Gecko),反正就是各种like(像)。在浏览器名称附近也有很多其它字符,如:Chrome/73.0.3683.103 Safari/537.36,也是各种like,其中的纠缠估计只有浏览器资深人士才能说得明白。
图244-4:关于浏览器使用情况的图表
最后给我的UA解析工具做个宣传,我的工具不仅详细的解析了UA中包含的信息,还将所有使用这个工具的UA信息进行了记录,并以图表的方式显示各种信息的使用情况占比,既详细又直观。上图是最近三个月用户量使用浏览器的人数占比,本工具不仅提供这样的图表直观显示,还以表格的形式详细的显示更多的信息。欢迎大家使用本网站的UA解析工具。
转载请注明:网创网 www.netcyw.cn/b244.html
加油!!!