JavaWeb中通过从request请求中获取浏览器、系统信息、终端ip等信息
一、使用UserAgentUtils.jar包
UserAgentUtils-1.20.jar下载地址:http://download.csdn.net/detail/chenchunlin526/9744244
UserAgentUtils-1.20源码source下载:http://download.csdn.net/detail/chenchunlin526/9744247
二、使用UserAgentUtils来获取客户端请求的信息:浏览器类型、操作系统类型、客户端IP
1、pom.xml 设置:
<!-- 请求头参数分析包 -->
<dependency>
<groupId>eu.bitwalker</groupId>
<artifactId>UserAgentUtils</artifactId>
<version>1.20</version>
</dependency>
2、Java代码:
/**
*
* @Description TODO
* @param request
* @return SearchLog
* @Date
*/
private SearchLog initSearchLog(HttpServletRequest request) {
// userAgent中有很多获取请求信息的方法
UserAgent userAgent = UserAgent.parseUserAgentString(request.getHeader("User-Agent"));
SearchLog searchLog = new SearchLog();
searchLog.setSearchExpression(getParam("searchExpression", request));
searchLog.setUserId(SessionUtil.getUserId());
searchLog.setUsername(SessionUtil.getCurrentUserName());
// searchLog.setSearchTime(new DateTime().toString("yyyy-MM-dd HH:mm:ss"));
searchLog.setSearchTime(new Date());
// 获取客户端请求的浏览器类型
searchLog.setBrowserType(userAgent.getBrowser().toString());
String s = request.getParameter("searchChannel");
searchLog.setSearchChannel(request.getParameter("searchChannel"));
// 获得终端设备的IP地址
searchLog.setTerminalIp(request.getRemoteAddr());
return searchLog;
}
===============================================================
request.getMethod():获得客户端向服务器端传送数据的方法有GET、POST、PUT等类型
request.getRequestURI():获得发出请求字符串的客户端地址
request.getServletPath():获得客户端所请求的脚本文件的文件路径
request.getServerName():获得服务器的名字
request.getServerPort():获得服务器的端口号
request.getRemoteAddr():获得客户端的IP地址
request.getRemoteHost():获得客户端电脑的名字,件=b网V@V中2UZQXdL管n育=?o8g1Spm;理@c)A8网B垠4G+)j网P育若失败,则返回客户端电脑的IP地址
request.getProtocol():
request.getHeaderNames():返回所有request header的名字,结果集是一个Enumeration(枚举)类的实例
request.getHeaders(String name):返回指定名字的request header的所有值,结果集是一个Enumeration(枚举)类的实例
(陆续完善中~~~)
---------------------------------------------------------------------------------------------------------------------------------------
感谢阅读,你若觉得文章对你有帮助,打赏一下我会更有动力哦~谢谢~