取得地址栏完整请求信息
程序员文章站
2022-04-05 14:51:53
...
转自:http://sunxboy.iteye.com/blog/284976
public static String getCompleteURL(HttpServletRequest request) {
return new StringBuilder(getCurrentHttpURL(request))
.append(request.getServletPath()).append("?")
.append(request.getQueryString()).toString();
}
/**
* 取得当前http地址
* @param request
* @return
* Date: 2008-12-1 下午02:59:03
*/
public static String getCurrentHttpURL(HttpServletRequest request){
StringBuilder urlBuilder = new StringBuilder();
urlBuilder.append(request.getScheme()).append("://");
urlBuilder.append(request.getServerName());
urlBuilder.append(request.getHeader("host")).append(":");
urlBuilder.append(request.getServerPort());
urlBuilder.append(request.getContextPath()).append("/");
String httpAddr = urlBuilder.toString();
urlBuilder = null;
return httpAddr;
}
public static String getIpAddr(HttpServletRequest request) {
String ip = request.getHeader("x-forwarded-for");
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip))
ip = request.getHeader("Proxy-Client-IP");
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip))
ip = request.getHeader("WL-Proxy-Client-IP");
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip))
ip = request.getRemoteAddr();
return ip;
}
上一篇: 6行代码实现QQ刷屏
下一篇: 佳博条码打印机怎么安装驱动?
推荐阅读