2024年4月2日发(作者:)
user-agent检测详解
特性检测并非浏览器检测
一、浏览器们的家族史
较古的浏览器
1993年,NCSA 发布了首款 web 浏览器 Mosaic。它的 user-agent 字串非常简洁:
Mosaic/0.9
虽然当时由于它对操作系统和平台的依赖性,但是基本格式还是很简单明了。在文本
中,斜杠前面是产品名称(可能会显示为 NCSA Mosaic 或是其他类似的字),斜杠后面是
产品版本号。
Netscape Communications 开发了 web 浏览器 Mozilla(当时号称“Mosaic 杀
手”)。他们首款公开发行版本: Netscape Navigator 2 的user-agent 字串具有如下格
式:
Mozilla/Version [Language] (Platform; Encryption)
Netscape 按之前的做法在 user-agent 字串的前半部分使用了产品名称和产品版本,
但在后面增加了下列信息:
1. Language - 表示应用程序用的是哪个语言
2. Platform - 表示应用程序是在什么操作系统和/或平台中运行
3. Encryption - 表示应用程序包含了什么安全加密类型。其中的值可能是
U(128位加密)、I(40位加密)、N(没加密)。
Netscape Navigator 2 的 user-agent 字串的示例:
Mozilla/2.02 [fr] (WinNT; I)
上面的字串指: Netscape Navigator 2.02 、法语 、Windows NT 、40位加密。
在当时,通过 user-agent 字串中的产品名称,可以正确判断使用的是哪个 web 浏览器。
Netscape Navigator 3 、Internet Explorer 3
1996年,Netscape Navigator 3 发布,它远远超过 Mosaic 成为当时最流行的
web 浏览器。而 user-agent 字串只有些小的变化:去掉了语言部分,多了个放操作系统
或CPU的可选信息。格式如下:
Mozilla/Version (Platform; Encryption [; OS-or-CPU description])
在 Windows 系统中 Netscape Navigator 3 的 user-agent 字串的示例:
Mozilla/3.0 (Win95; U)


发布评论