java request.getHeader("user-agent")获取浏览器信息

一、User Agent的含义

User Agent中文名为用户代理,简称 UA,它是一个特殊字符串头,使得服务器能够识别客户使用的操作系统及版本、CPU 类型、浏览器及版本、浏览器渲染引擎、浏览器语言、浏览器插件等。

一些网站常常通过判断 UA 来给不同的操作系统、不同的浏览器发送不同的页面,因此可能造成某些页面无法在某个浏览器中正常显示,但通过伪装 UA 可以绕过检测。

浏览器的 UA 字串
标准格式为: 浏览器标识 (操作系统标识; 加密等级标识; 浏览器语言) 渲染引擎标识 版本信息

浏览器标识
由于很多网站在进行 UA 检测的时候忽略了两位数版本号,所以可能造成 浏览器及之后版本收到糟糕的页面,因此自 浏览器 10 之后的版本中浏览器标识项固定为 浏览器,在 UA 字串尾部添加真实版本信息。

注:来源自百度百科

当在浏览器发起一个请求后,我们可以查看请求信息。
这里写图片描述
Request Headers:请求头会包含请求信息。

二:获得浏览器请求头中的User-Agent

(1)请求

String userAgent = request.getHeader("user-agent");

(2)获取

User-Agent:Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36

三、UserAgentUtils.jar

UserAgentUtils.jar是UserAgent的工具类。

(1)maven

<!-- https://mvnrepository.com/artifact/eu.bitwalker/UserAgentUtils -->
<dependency>
    <groupId>eu.bitwalker</groupId>
    <artifactId>UserAgentUtils</artifactId>
    <version>1.20</version>
</dependency>

(2)java代码

UserAgent userAgent = UserAgent.parseUserAgentString(request.getHeader("User-Agent"));  
Browser browser = userAgent.getBrowser();  
OperatingSystem os = userAgent.getOperatingSystem();

参考文章:

Java通过浏览器请求头(User-Agent)获取 浏览器类型,操作系统类型,手机机型
java 获取HttpRequest Header的几种方法(必看篇)

  • 11
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值