User Agent中文名为用户代理,简称 UA,User-Agetn是Http协议中的一部分,属于头域的组成部分。
用较为普通的一点来说,是一种向访问网站提供你所使用的浏览器类型、操作系统、浏览器内核等信息的标识。通过这个标识,用户所访问的网站可以显示不同的排版从而为用户提供更好的体验或者进行信息统计
可以通过这样的方式获得用户的UserAgent :
String strUserAgent = request.getHeader("User-Agent");
下面列举几种 UserAgent :
Mozilla/5.0 (iPad; U; CPU OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 Mobile/7B334b Safari/531.21.10
Mozilla/5.0 (iPhone; U; CPU iPhone OS 3_0 like Mac OS X; en-us) AppleWebKit/528.18 (KHTML, like Gecko) Version/4.0 Mobile/7A341 Safari/528.16
Mozila/5.0 (iPod; U; CPU like Mac OS X; en) AppleWebKit/420.1 (KHTML, like Gecko) Version/3.0 Mobile/3A101a Safari/419.3
Mozilla/5.0 (Linux; U; Android 2.1-update1; de-de; HTC Desire 1.19.161.5 Build/ERE27) AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Mobile Safari/530.17
DoCoMo/2.0 ISIM0801(c100;TB;W24H16)
Mozilla/5.0 (Windows NT 5.1) AppleWebKit/534.51.22 (KHTML, like Gecko) Version/5.1.1 Safari/534.51.22
Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13 www.penddy.com
在获取UserAgent 后
可以用这个方法进行检测,判断用户的客户端。其中key是我们需要的值譬如Android 注意indexof是区分大小写的
private boolean isMatch(String userAgent,String key) {
if (userAgent == null) {
return false;
}
StringTokenizer st = new StringTokenizer(key, ",", false);
while (st.hasMoreTokens()) {
if (userAgent.indexOf(st.nextToken()) != -1) {
return true;
}
}
return false;
}
Firefox中如何设置User-Agent
在Firefox中可以下载”User Agent Switcher“扩展来设置和切换UA,官方地址如下:
https://addons.mozilla.org/zh-CN/firefox/addon/59
安装后会工具目录下有”User Agent Switcher”列项,可以将Firefox的UA设置为IE、Netscape、Opera或其他自定义UA
如果你想知道自己的浏览器或者手机浏览器所使用UA是什么,可以访问如下地址查看: