UserAgentUtils 是解析 User-Agent 的 Java 类库,能够识别客户端的浏览器和操作系统信息
方法一:UserAgentUtils
参考
GitHub https://github.com/HaraldWalker/user-agent-utils
Maven
1 2 3 4 5
| <dependency> <groupId>eu.bitwalker</groupId> <artifactId>UserAgentUtils</artifactId> <version>1.21</version> </dependency>
|
使用
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| //通过 request 获取用户的 Agent: String agent = request.getHeader("User-Agent"); //解析 agent 字符串 UserAgent userAgent = UserAgent.parseUserAgentString(agent);
//获取浏览器对象 Browser browser = userAgent.getBrowser(); //获取操作系统对象 OperatingSystem operatingSystem = userAgent.getOperatingSystem();
System.out.println("浏览器名称:"+browser.getName()); System.out.println("浏览器类型:"+browser.getBrowserType()); System.out.println("浏览器家族:"+browser.getGroup()); System.out.println("浏览器生产厂商:"+browser.getManufacturer()); System.out.println("浏览器使用的渲染引擎:"+browser.getRenderingEngine()); System.out.println("浏览器版本:"+userAgent.getBrowserVersion());
System.out.println("操作系统名称:"+operatingSystem.getName()); System.out.println("设备类型:"+operatingSystem.getDeviceType()); System.out.println("操作系统家族:"+operatingSystem.getGroup()); System.out.println("操作系统生产厂商:"+operatingSystem.getManufacturer());
|
1 2 3 4 5 6 7 8 9 10 11
| //结果 浏览器名称:Chrome 8 浏览器类型:WEB_BROWSER 浏览器家族:CHROME 浏览器生产厂商:GOOGLE 浏览器使用的渲染引擎:WEBKIT 浏览器版本:83.0.4103.61 操作系统名称:Mac OS X 设备类型:COMPUTER 操作系统家族:MAC_OS_X 操作系统生产厂商:APPLE
|
参考
https://hutool.cn/docs/#/http/UA%E5%B7%A5%E5%85%B7%E7%B1%BB-UserAgentUtil
Maven
1 2 3 4 5
| <dependency> <groupId>cn.hutool</groupId> <artifactId>hutool-all</artifactId> <version>5.3.6</version> </dependency>
|
使用
1 2 3 4 5 6 7 8 9 10 11 12 13
| //通过 request 获取用户的 Agent String agent = request.getHeader("User-Agent");
UserAgent ua = UserAgentUtil.parse(agent); ua.getBrowser().toString();//Chrome ua.getVersion();//14.0.835.163 ua.getEngine().toString();//Webkit ua.getEngineVersion();//535.1 ua.getOs().toString();//Windows 7 ua.getPlatform().toString();//Windows
//判断终端是否为移动终端 ua.isMobile();
|