如何在Spring MVC中获取确切的客户端浏览器名称和版本?
问题内容:
我正在使用Spring MVC应用程序,并且需要访问客户端浏览器的名称和版本。
我HttpServletRequest
在操作中有一个实例作为参数和使用request.getHeader("User- Agent")
方法,但是Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko
在Internet Explorer 9中返回了该实例。
我需要确切的编号和版本。有没有这样做的工具?
问题答案:
确认用户代理不安全。尽管如此,在缺乏其他方法的情况下,您仍应解析用户代理标头,实际上这并不容易,因为组合的数量非常庞大。除非你想自己动手,否则我建议
http://www.bitwalker.eu/software/user-agent-
utils
来源可在
https://github.com/HaraldWalker/user-agent-
utils
用法很简单
UserAgent userAgent = UserAgent.parseUserAgentString(request.getHeader("User-Agent"));
System.out.println(userAgent.getBrowser().getName() + " " + userAgent.getBrowserVersion());