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

时间:2022-08-26 21:28:01

一、user agent的含义

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

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

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

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

注:来源自百度百科

当在浏览器发起一个请求后,我们可以查看请求信息。

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

request headers:请求头会包含请求信息。

二:获得浏览器请求头中的user-agent

(1)请求

?
1
string useragent = request.getheader("user-agent");

(2)获取

?
1
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

?
1
2
3
4
5
6
<!-- https://mvnrepository.com/artifact/eu.bitwalker/useragentutils -->
<dependency>
  <groupid>eu.bitwalker</groupid>
  <artifactid>useragentutils</artifactid>
  <version>1.20</version>
</dependency>

(2)java代码

?
1
2
3
useragent useragent = useragent.parseuseragentstring(request.getheader("user-agent"));
browser browser = useragent.getbrowser();
operatingsystem os = useragent.getoperatingsystem();

参考文章:

java 获取httprequest header的几种方法(必看篇)

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

原文链接:https://blog.csdn.net/w410589502/article/details/73163383