IP地址的获取
2024-09-06 07:22:30
//ip地址的获取:非原创,之前在其他地方看到,拿过来备份下:
public static String getIPAddress(HttpServletRequest request) {
String ip = null;
String ipAddresses = request.getHeader("X-Forwarded-For");
if(ipAddresses == null || ipAddresses.length() == 0 || "unknown".equalsIgnoreCase(ipAddresses)) {
ipAddresses = request.getHeader("Proxy-Client-IP");
} if(ipAddresses == null || ipAddresses.length() == 0 || "unknown".equalsIgnoreCase(ipAddresses)) {
ipAddresses = request.getHeader("WL-Proxy-Client-IP");
} if(ipAddresses == null || ipAddresses.length() == 0 || "unknown".equalsIgnoreCase(ipAddresses)) {
ipAddresses = request.getHeader("HTTP_CLIENT_IP");
} if(ipAddresses == null || ipAddresses.length() == 0 || "unknown".equalsIgnoreCase(ipAddresses)) {
ipAddresses = request.getHeader("X-Real-IP");
} if(ipAddresses != null && ipAddresses.length() != 0) {
ip = ipAddresses.split(",")[0];
} if(ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ipAddresses)) {
ip = request.getRemoteAddr();
} return ip;
}
最新文章
- 深入理解DOM节点类型第四篇——文档片段节点DocumentFragment
- Finalize()、Dispose()、SafeHandle、GC
- Android study --- 广播
- (1)编写一个接口ShapePara,要求: 接口中的方法: int getArea():获得图形的面积。int getCircumference():获得图形的周长 (2)编写一个圆类Circle,要求:圆类Circle实现接口ShapePara。 该类包含有成员变量: radius:public 修饰的double类型radius,表示圆的半径。 x:private修饰的double型变量x,
- LintCode A + B Problem
- IOS 多线程编程之Grand Central Dispatch(GCD)介绍和使用 多线程基础和练习
- [ActionScript 3.0] 安全沙箱的类型sandboxType,判断当前程序是AIR还是web程序
- CircularProgressBar
- BestCoder Round #36 [B] Gunner
- maven01 hello maven
- 新发现的Cyberduck(映射网盘)和zsuncloud(硬件产品很新潮),群辉nas的确好用(购买链接)
- 关于CSS reset的思考
- .Net异步编程知多少
- C++11 中值得关注的几大变化(网摘)
- SQL Server 2008 R2 添加登录账户配置权限
- butterknife-gradle-plugin插件
- 此主机支持Intel VT-x,但Intel VT-x处于禁用状态
- 用 ghostscript 转化PDF文件为图片 的参数设置
- maven 将jar包推送到自己本机的maven库
- ruby-----render讲解