如何判断请求发送端是手机还是电脑

随着手持互联网设备不断的加入,平板、手机上网占用了网络很大领域,由此在开发时经常遇到一个问题,需要考虑请求者是一个电脑还是平板还是手机呢???这里我人可以使用请求头信息user-agent来判断。

首先来看一级数据:

请求访问来源:

1.win764bitIE9

user-agent:Mozilla/5.0(compatible;MSIE9.0;WindowsNT6.1;Win64;x64;Trident/5.0)

2.Android2.3.6uc

user-agent:Mozilla/5.0(Linux;U;Android2.3.6;zh-CN;NexusSBuild/GRK39F)AppleWebKit/534.31(KHTML,likeGecko)UCBrowser/9.0.1.275U3/0.8.0MobileSafari/534.31

上面是电脑与手机的访问获取到的user-agent数据,通过以上数据可以看到,它们之间的user-agent中会列出不同的系统信息与浏览器信息以及操作系统信息等等,这时我们就可以通过这些数据来分辨请求是来自什么客户端发出的了。

附件1:如何获取请求头信息代码

[code="java"]Enumeratione=request.getHeaderNames();

while(e.hasMoreElements()){

Stringkey=(String)e.nextElement();

out.println(key);

out.println(":");

out.println(request.getHeader(key));

out.println("");

}

附件2:加密等级标识说明

N:表示无安全加密

I:表示弱安全加密

U:表示强安全加密

附件3:操作系统标识说明

[code="java"]FreeBSD

X11;FreeBSD(versionno.)i386

X11;FreeBSD(versionno.)AMD64

Linux

X11;Linuxppc

X11;Linuxppc64

X11;Linuxi686

X11;Linuxx86_64

Mac

Macintosh;PPCMacOSX

Macintosh;IntelMacOSX

Solaris

X11;SunOSi86pc

X11;SunOSsun4u

Windows:

windowsNT6.2对应操作系统windows8

WindowsNT6.1对应操作系统windows7

WindowsNT6.0对应操作系统windowsvista

WindowsNT5.2对应操作系统windows2003

WindowsNT5.1对应操作系统windowsxp

WindowsNT5.0对应操作系统windows2000

WindowsME

Windows98

<ahref=http://www.2345.com/?khtmover>看完后请点击,支持一下作者</a>

【温馨提示】如果我的整理对您的学习有帮助,可以在方便的情况向我们整理小组的支付宝支付1毛钱,表示对我们整理小组的支持,谢谢支付宝帐号:[email protected]

相关推荐