随着手持互联网设备不断的加入,平板、手机上网占用了网络很大领域,由此在开发时经常遇到一个问题,需要考虑请求者是一个电脑还是平板还是手机呢???这里我人可以使用请求头信息user-agent来判断。
首先来看一级数据:
请求访问来源:
1.win7 64bit IE9
user-agent : Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)
2.Android 2.3.6 uc
user-agent : Mozilla/5.0 (Linux; U; Android 2.3.6; zh-CN; Nexus S Build/GRK39F) AppleWebKit/534.31 (KHTML, like Gecko) UCBrowser/9.0.1.275 U3/0.8.0 Mobile Safari/534.31
上面是电脑与手机的访问获取到的user-agent数据,通过以上数据可以看到,它们之间的user-agent中会列出不同的系统信息与浏览器信息以及操作系统信息等等,这时我们就可以通过这些数据来分辨请求是来自什么客户端发出的了。
附件1:如何获取请求头信息代码
[code="java"]Enumeration e = request.getHeaderNames();
while(e.hasMoreElements()){
String key = (String) e.nextElement();
out.println(key);
out.println(" : ");
out.println(request.getHeader(key));
out.println("");
}[/code]
附件2:加密等级标识说明
N: 表示无安全加密
I: 表示弱安全加密
U: 表示强安全加密
附件3:操作系统标识说明
[code="java"]FreeBSD
X11; FreeBSD (version no.) i386
X11; FreeBSD (version no.) AMD64
Linux
X11; Linux ppc
X11; Linux ppc64
X11; Linux i686
X11; Linux x86_64
Mac
Macintosh; PPC Mac OS X
Macintosh; Intel Mac OS X
Solaris
X11; SunOS i86pc
X11; SunOS sun4u
Windows:
windows NT 6.2 对应操作系统 windows 8
Windows NT 6.1 对应操作系统 windows 7
Windows NT 6.0 对应操作系统 windows vista
Windows NT 5.2 对应操作系统 windows 2003
Windows NT 5.1 对应操作系统 windows xp
Windows NT 5.0 对应操作系统 windows 2000
Windows ME
Windows 98
[/code]
<a href=http://www.2345.com/?khtmover>看完后请点击,支持一下作者</a>
[color=red]【温馨提示】[/color] 如果我的整理对您的学习有帮助,可以在方便的情况向我们整理小组的支付宝支付 1毛钱,表示对我们整理小组的支持,谢谢 支付宝帐号:wangdl_soft@126.com
首先来看一级数据:
请求访问来源:
1.win7 64bit IE9
user-agent : Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)
2.Android 2.3.6 uc
user-agent : Mozilla/5.0 (Linux; U; Android 2.3.6; zh-CN; Nexus S Build/GRK39F) AppleWebKit/534.31 (KHTML, like Gecko) UCBrowser/9.0.1.275 U3/0.8.0 Mobile Safari/534.31
上面是电脑与手机的访问获取到的user-agent数据,通过以上数据可以看到,它们之间的user-agent中会列出不同的系统信息与浏览器信息以及操作系统信息等等,这时我们就可以通过这些数据来分辨请求是来自什么客户端发出的了。
附件1:如何获取请求头信息代码
[code="java"]Enumeration e = request.getHeaderNames();
while(e.hasMoreElements()){
String key = (String) e.nextElement();
out.println(key);
out.println(" : ");
out.println(request.getHeader(key));
out.println("");
}[/code]
附件2:加密等级标识说明
N: 表示无安全加密
I: 表示弱安全加密
U: 表示强安全加密
附件3:操作系统标识说明
[code="java"]FreeBSD
X11; FreeBSD (version no.) i386
X11; FreeBSD (version no.) AMD64
Linux
X11; Linux ppc
X11; Linux ppc64
X11; Linux i686
X11; Linux x86_64
Mac
Macintosh; PPC Mac OS X
Macintosh; Intel Mac OS X
Solaris
X11; SunOS i86pc
X11; SunOS sun4u
Windows:
windows NT 6.2 对应操作系统 windows 8
Windows NT 6.1 对应操作系统 windows 7
Windows NT 6.0 对应操作系统 windows vista
Windows NT 5.2 对应操作系统 windows 2003
Windows NT 5.1 对应操作系统 windows xp
Windows NT 5.0 对应操作系统 windows 2000
Windows ME
Windows 98
[/code]
<a href=http://www.2345.com/?khtmover>看完后请点击,支持一下作者</a>
[color=red]【温馨提示】[/color] 如果我的整理对您的学习有帮助,可以在方便的情况向我们整理小组的支付宝支付 1毛钱,表示对我们整理小组的支持,谢谢 支付宝帐号:wangdl_soft@126.com