经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » HTML/CSS » 浏览器 » 查看文章
java request.getHeader("user-agent")获取浏览器信息的方法
来源:jb51  时间:2019/3/29 16:06:46  对本文有异议

一、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 获取HttpRequest Header的几种方法(必看篇)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持w3xue。

 友情链接:直通硅谷  点职佳