如何使用JSP获取客户端IP和浏览器信息?
答案 0 :(得分:11)
以下jsp将输出您的IP地址和用户代理:
Your user-agent is: <%=request.getHeader("user-agent")%><br/>
Your IP address is: <%=request.getRemoteAddr()%><br/>
要了解用户正在使用的浏览器和/或操作系统,请解析用户代理标头。
例如:
<%
String userAgent = request.getHeader("user-agent");
if (userAgent.indexOf("MSIE") > -1) {
out.println("Your browser is Microsoft Internet Explorer<br/>");
}
%>
有关用户代理的列表,请查看here。
答案 1 :(得分:5)
对于浏览器部分,您需要解析reqeust的User-Agent部分。
String browserType = request.getHeader("User-Agent");
您可以在那里找到相关信息......
答案 2 :(得分:1)
ServletRequest.getRemoteAddr()或X-Forwarded-For标题,如果您认为可以信任它。
什么样的浏览器信息?请求标头将包含User-Agent。
答案 3 :(得分:1)
String browser=request.getHeader("user-agent");
String browsername = "";
String browserversion = "";
String[] otherBrowsers={"Firefox","Chrome","Chrome","Safari"};
if(browser != null ){
if((browser.indexOf("MSIE") == -1) && (browser.indexOf("msie") == -1)){
for(int i=0; i< otherBrowsers.length; i++){
System.out.println(browser.indexOf(otherBrowsers[i]));
browsername=otherBrowsers[i];
break;
}
String subsString = browser.substring( browser.indexOf(browsername));
String Info[] = (subsString.split(" ")[0]).split("/");
browsername = Info[0];
browserversion = Info[1];
}
else{
String tempStr = browser.substring(browser.indexOf("MSIE"),browser.length());
browsername = "IE"
browserversion = tempStr.substring(4,tempStr.indexOf(";"));
}
}
答案 4 :(得分:0)
Here你可以找到getRemoteAddr(),其中
返回客户端的完全限定名称或发送请求的最后一个代理
...和你一起(也许)检索浏览器
request.getHeader("User-Agent")
答案 5 :(得分:0)