获取user-agent并区分

本文展示了如何从HTTP请求中获取用户代理信息,通过示例代码详细解析了不同浏览器和设备的User-Agent字符串。

Action 获取 user-agent

    HttpServletRequest Request = ServletActionContext.getRequest();
    System.out.println("--------------------------");
    String useragent = Request.getHeader("User-Agent"); 
    System.out.println(useragent); 
    System.out.println("--------------------------");


部分测试结果

--------------------------
火狐    Mozilla/5.0 (Windows NT 6.3; WOW64; rv:31.0) Gecko/20100101 Firefox/31.0
--------------------------
--------------------------
ie11     Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; rv:11.0) like Gecko
--------------------------
--------------------------
goole   Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/34.0.1847.116 Safari/537.36
--------------------------
--------------------------
小米     Mozilla/5.0 (Linux; U; Android 4.1.1; zh-cn; MI 2 Build/JRO03L) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30
--------------------------
--------------------------
apple    Mozilla/5.0 (iPhone; CPU iPhone OS 7_1_2 like Mac OS X) AppleWebKit/537.51.2 (KHTML, like Gecko) Version/7.0 Mobile/11D257 Safari/9537.53
--------------------------
--------------------------
linu       Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20131029 Firefox/17.0
--------------------------
--------------------------
mi2s    Mozilla/5.0 (Linux; U; Android 4.1.1; zh-cn; MI 2S Build/JRO03L) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Mobile Safari/537.36 XiaoMi/MiuiBrowser/2.0.1
--------------------------
--------------------------
sum     Mozilla/5.0 (Linux; U; Android 2.3.6; zh-cn; GT-S7500 Build/GINGERBREAD) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1
--------------------------
--------------------------
sum2   Mozilla/5.0 (Linux; U; Android 4.3; zh-cn; GT-N7100 Build/JSS15J) AppleWebKit/537.36 (KHTML, like Gecko)Version/4.0 MQQBrowser/5.2 Mobile Safari/537.36
--------------------------

HTC

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

ipad

Mozilla/5.0(iPad; U; CPU iPhone OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 Mobile/7B314 Safari/531.21.10



在HTTP请求头中,User-Agent是一个标识客户端应用程序、操作系统、设备厂商和版本等信息的字符串。通过分析User-Agent字符串,可以确定请求是来自PC还是移动设备。 以下是一些常用的解决方案: 1. 根据User-Agent字符串进行分析 通过分析User-Agent字符串,可以识别请求来自哪种设备。例如,常见的PC浏览器的User-Agent字符串可能包含“Windows”或“Macintosh”等关键词,而移动设备的User-Agent字符串则可能包含“iPhone”、“Android”等关键词。可以使用服务器端的脚本语言(如PHP、Python、Java等)来获取User-Agent分析它,从而确定请求来自哪种设备。 2. 使用响应式设计 使用响应式设计的网站可以自动适应不同的设备尺寸和屏幕分辨率。无论用户是在PC上还是在移动设备上访问网站,网站都可以自适应调整布局和样式,以适应不同的设备。 3. 使用CSS媒体查询 CSS媒体查询可以根据屏幕尺寸和分辨率来设置不同的CSS样式。通过使用CSS媒体查询,可以根据设备屏幕大小和分辨率的不同,为PC和移动设备设置不同的样式和布局。 4. 使用JavaScript 使用JavaScript可以获取设备的屏幕宽度和高度,根据这些信息来动态调整布局和样式。可以使用JavaScript编写代码来检测设备屏幕大小,根据需要加载不同的CSS文件或JavaScript文件。 需要注意的是,User-Agent字符串不是100%可靠的方式来区分PC和移动设备。例如,某些移动设备的浏览器可能会伪装成PC浏览器来访问网站。因此,在设计响应式网站或应用程序时,应该考虑到这种情况,使用多种方式来适应不同的设备。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值