Java 应用程序如何识别特定的浏览器
How can a java application identify a specific browser?
如何识别浏览器是 Firefox 还是 Chrome?基本上,我希望应用程序仅在用户注册的特定浏览器上运行。对于此方案,我希望我的应用程序识别用户正在使用的浏览器,以了解是否允许应用程序运行。
我正在使用java servlet。
我尝试了浏览器的本地存储,但可以在无法控制的情况下从我的应用程序中删除它。如果可以使用本地存储,请告诉我如何操作。
(是的,我可以获取浏览器信息,但我想使用浏览器标识允许我的应用程序用户从中运行应用程序的特定计算机;否则,我需要限制该用户访问我的应用程序。
从 HTTP requeste 标头获取用户代理属性。
String userAgent=req.getHeader("user-agent");
String browserName = "";
String browserVer = "";
if(userAgent.contains("Chrome")){ //checking if Chrome
String substring=userAgent.substring(userAgent.indexOf("Chrome")).split(" ")[0];
browserName=substring.split("/")[0];
browserVer=substring.split("/")[1];
}
else if(userAgent.contains("Firefox")){ //Checking if Firefox
String substring=userAgent.substring(userAgent.indexOf("Firefox")).split(" ")[0];
browserName=substring.split("/")[0];
browserVer=substring.split("/")[1];
}
httpRequest.getHeader("user-agent")
请在 servlet 中使用以下代码来了解哪个浏览器正在访问您的 servlet。
String userAgent = request.getHeader("user-agent");
public class MyServlet extends HttpServlet
{
@Override
public void doGet(final HttpServletRequest aRequest,
final HttpServletResponse aResponse) throws ServletException, IOException
{
final String agent = aRequest.getHeader("user-agent");
// agent will looks like
// Mozilla/5.0 (Windows NT 5.1; rv:23.0) Gecko/20100101 Firefox/23.0
// Mozilla/2.0 (compatible; MSIE 6.0; Windows NT 5.2)
// Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/30.0.1599.101 Safari/537.36
// etc.
}
}
这是代码:
String userAgent = req.getHeader("user-agent");
UserAgent ua = UserAgent.parseUserAgentString(userAgent);
Version browserVersion = ua.getBrowserVersion();
String browserName = ua.getBrowser().toString();
int majVersion = Integer.parseInt(browserVersion.getMajorVersion());
或者使用可以轻松地从javascript代码中获取浏览器详细信息,如下所示 - 浏览器代号=导航器.app代号 浏览器名称 = navigator.appName 浏览器版本 = navigator.appVersion
相关文章:
- 如何识别“;输入“;没有浏览器检测的事件
- 在 JavaScript 中识别浏览器选项卡的任何方法
- Chrome 以外的浏览器中的语音识别
- jQuery无法识别类的变化,尽管浏览器确实如此
- 如何识别浏览器
- 如何识别当前打开的每个单独的浏览器窗口
- Java 应用程序如何识别特定的浏览器
- 如何使浏览器识别用户的分辨率
- 火狐浏览器无法识别table.cells吗?
- 在浏览器中打开时,如何识别文件的独特之处
- 识别浏览器 HTML5 功能的推荐方法
- 在浏览器中识别完整的图像绘制
- jQuery.is(“:焦点”)不;在IE以外的浏览器中,无法识别焦点在复选框上
- 识别点击浏览器关闭按钮弹出消息
- JavaScript中有没有一种方法可以识别浏览器何时加载页面
- 跨浏览器语音识别
- 浏览器不能识别变量
- 如何将浏览器窗口识别为Firefox-Extension中的弹出窗口
- 跨浏览器识别元素
- 浏览器识别