一、user agent的含义
user agent中文名为用户代理,简称 ua,它是一个特殊字符串头,使得服务器能够识别客户使用的操作系统及版本、cpu 类型、浏览器及版本、浏览器渲染引擎、浏览器语言、浏览器插件等。
一些网站常常通过判断 ua 来给不同的操作系统、不同的浏览器发送不同的页面,因此可能造成某些页面无法在某个浏览器中正常显示,但通过伪装 ua 可以绕过检测。
浏览器的 ua 字串
标准格式为: 浏览器标识 (操作系统标识; 加密等级标识; 浏览器语言) 渲染引擎标识 版本信息
浏览器标识
由于很多网站在进行 ua 检测的时候忽略了两位数版本号,所以可能造成 浏览器及之后版本收到糟糕的页面,因此自 浏览器 10 之后的版本中浏览器标识项固定为 浏览器,在 ua 字串尾部添加真实版本信息。
注:来源自百度百科
当在浏览器发起一个请求后,我们可以查看请求信息。
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