请看下面的代码。
String userAgent = request.getHeader("User-Agent");
在我的例子中,"request.getHeader("User-Agent") "方法调用返回以下字符串。
Mozilla4.0 (兼容; MSIE 7.0; Windows NT 10.0; WOW64; Trident7.0; .NET4.0C; .NET4.0E)
但当我检查我的用户代理字符串在 http:/useragentstring.com
它显示为 Mozilla5.0 (Windows NT 10.0; WOW64; Trident7.0; rv:11.0) 像Gecko一样。
显示的浏览器版本正确。IE浏览器.
所以我担心的是,我使用的方法是正确的,还是缺少了什么,因为同样的代码在chrome和Mozilla中返回正确的UserAgent字符串。
请检查您的网站是否设置了X-UA-Compatible元标签。请尝试修改如下。
<meta http-equiv="X-UA-Compatible" content="IE=edge">
据我所知,UserAgent字符串可以由浏览器所有者修改,如通过注册表修改UserAgent字符串或iexplore Emulation。请导航到下面的注册表,检查是否修改了用户代理。
Computer\HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\5.0\User Agent
Computer\HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION
更详细的信息,请查看这些链接。
此外,你也可以尝试重置IE浏览器的设置,将其改为默认状态。
打开IE浏览器->;点击 工具类 并选择 互联网选项 -> 选择 高级 选项卡,然后点击 重置 按钮,检查了 删除个人设置 复选框和复选 重置 按钮。