用户代理
User-Agent 请求头 是一个特征字符串,它可以让服务器和网络对等体识别请求 用户代理 的应用程序、操作系统、供应商和/或版本。
警告: 请阅读 使用用户代理进行浏览器检测 ,了解为什么向不同的浏览器提供不同的网页或服务通常不是一个好主意。
语法
http
User-Agent: <product> / <product-version> <comment>
Web 浏览器的通用格式
http
User-Agent: Mozilla/5.0 (<system-information>) <platform> (<platform-details>) <extensions>
指令
- <product>
-
产品标识符 - 它的名称或开发代号。
- <product-version>
-
产品的版本号。
- <comment>
-
零个或多个包含更多详细信息的注释。例如,子产品信息。
Firefox UA 字符串
有关 Firefox 和基于 Gecko 的用户代理字符串的更多信息,请参见 Firefox 用户代理字符串参考。Firefox 的 UA 字符串分为 4 个部分
Mozilla/5.0 (platform; rv:geckoversion) Gecko/geckotrail Firefox/firefoxversion
Mozilla/5.0
是表示浏览器与 Mozilla 兼容的一般标记。由于历史原因,今天几乎所有浏览器都会发送它。- platform 描述了浏览器运行的本机平台(Windows、Mac、Linux、Android 等)以及它是否为移动电话。 Firefox OS 手机显示
Mobile
- 网页是平台。请注意,platform 可以包含多个用“;
”分隔的标记。有关更多详细信息和示例,请参见下文。 - rv:geckoversion 表示 Gecko 的发布版本(例如“17.0”)。在最近的浏览器中,geckoversion 与 firefoxversion 相同。
- Gecko/geckotrail 表示浏览器基于 Gecko。(在桌面端,geckotrail 始终是固定字符串
20100101
。) - Firefox/firefoxversion 表示浏览器是 Firefox 并且提供版本(例如“17.0”)。
示例
Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:47.0) Gecko/20100101 Firefox/47.0 Mozilla/5.0 (Macintosh; Intel Mac OS X x.y; rv:42.0) Gecko/20100101 Firefox/42.0
Chrome UA 字符串
Chrome(或基于 Chromium/Blink 的引擎)用户代理字符串类似于 Firefox 的。为了兼容性,它添加了诸如 KHTML, like Gecko
和 Safari
之类的字符串。
示例
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36
Opera UA 字符串
Opera 浏览器也基于 Blink 引擎,这就是为什么它看起来几乎与 Chrome UA 字符串相同,但添加了 "OPR/<version>"
。
示例
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.106 Safari/537.36 OPR/38.0.2220.41
较旧的基于 Presto 的 Opera 版本使用
Opera/9.80 (Macintosh; Intel Mac OS X; U; en) Presto/2.2.15 Version/10.00 Opera/9.60 (Windows NT 6.0; U; en) Presto/2.1.1
Microsoft Edge UA 字符串
Edge 浏览器也基于 Blink 引擎。它添加了 "Edg/<version>"
。
示例
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36 Edg/91.0.864.59
Safari UA 字符串
在这个示例中,用户代理字符串是移动 Safari 的版本。它包含单词 "Mobile"
。
示例
Mozilla/5.0 (iPhone; CPU iPhone OS 13_5_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.1.1 Mobile/15E148 Safari/604.1
爬虫和机器人 UA 字符串
示例
Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)
Mozilla/5.0 (compatible; YandexAccessibilityBot/3.0; +http://yandex.com/bots)
库和网络工具 UA 字符串
示例
curl/7.64.1
PostmanRuntime/7.26.5
规范
规范 |
---|
HTTP 语义 # field.user-agent |
浏览器兼容性
BCD 表仅在浏览器中加载