From f6f928d81ad53f424f35a9149db11b301ed7f8a8 Mon Sep 17 00:00:00 2001
From: LuoTong <2232327099qq.com>
Date: 星期一, 22 四月 2024 16:25:05 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/haucheng_panzhihua' into haucheng_panzhihua
---
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/IPUtil.java | 77 +++++++++++++++++++-------------------
1 files changed, 38 insertions(+), 39 deletions(-)
diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/IPUtil.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/IPUtil.java
index 0b25a1a..1ae4e98 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/IPUtil.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/IPUtil.java
@@ -1,65 +1,67 @@
package com.panzhihua.common.utlis;
+import com.alibaba.fastjson.JSONObject;
+import lombok.extern.slf4j.Slf4j;
+
+import javax.servlet.http.HttpServletRequest;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.URL;
-import javax.servlet.http.HttpServletRequest;
-
-import com.alibaba.fastjson.JSONObject;
-
-import lombok.extern.slf4j.Slf4j;
-
/**
- * @ClassName: IPUtil
- * @version 1.0
- * @Desc: Ip工具类
* @author huaping hu
+ * @version 1.0
+ * @ClassName: IPUtil
+ * @Desc: Ip工具类
* @date 2016年6月1日下午5:26:56
* @history v1.0
- *
*/
@Slf4j
public class IPUtil {
/**
- *
* 描述:获取IP地址
- *
+ *
+ * @param request
+ * @return
* @author huaping hu
* @date 2016年6月1日下午5:25:44
- * @param request
- * @return
*/
public static String getIpAddress(HttpServletRequest request) {
-
+ if (request == null) {
+ return "unknown";
+ }
String ip = request.getHeader("x-forwarded-for");
-
- if (ip == null || ip.length() == 0 || "nuknown".equalsIgnoreCase(ip)) {
-
+ if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("Proxy-Client-IP");
}
- if (ip == null || ip.length() == 0 || "nuknown".equalsIgnoreCase(ip)) {
-
+ if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
+ ip = request.getHeader("X-Forwarded-For");
+ }
+ if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("WL-Proxy-Client-IP");
}
- if (ip == null || ip.length() == 0 || "nuknown".equalsIgnoreCase(ip)) {
+ if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
+ ip = request.getHeader("X-Real-IP");
+ }
+ if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getRemoteAddr();
}
- return ip;
+
+ return "0:0:0:0:0:0:0:1".equals(ip) ? "127.0.0.1" : ip;
}
+
/**
- *
* 描述:获取IP+[IP所属地址]
- *
- * @author huaping hu
- * @date 2016年6月1日下午6:01:09
+ *
* @param request
* @return
+ * @author huaping hu
+ * @date 2016年6月1日下午6:01:09
*/
public static String getIpBelongAddress(HttpServletRequest request) {
@@ -70,13 +72,12 @@
}
/**
- *
* 描述:获取IP所属地址
- *
- * @author huaping hu
- * @date 2016年6月1日下午5:59:43
+ *
* @param ip
* @return
+ * @author huaping hu
+ * @date 2016年6月1日下午5:59:43
*/
public static String getIPbelongAddress(String ip) {
@@ -98,20 +99,19 @@
}
/**
- *
* 描述:获取Ip所属地址
- *
- * @author huaping hu
- * @date 2016年6月1日下午5:38:55
+ *
* @param urlStr
* @return
+ * @author huaping hu
+ * @date 2016年6月1日下午5:38:55
*/
public static String call(String urlStr) {
try {
URL url = new URL(urlStr);
- HttpURLConnection httpCon = (HttpURLConnection)url.openConnection();
+ HttpURLConnection httpCon = (HttpURLConnection) url.openConnection();
httpCon.setConnectTimeout(3000);
httpCon.setDoInput(true);
@@ -130,13 +130,12 @@
}
/**
- *
* 描述:将InputStream转换成String
- *
- * @author huaping hu
- * @date 2016年6月1日下午5:51:53
+ *
* @param is
* @return
+ * @author huaping hu
+ * @date 2016年6月1日下午5:51:53
*/
public static String streamConvertToSting(InputStream is) {
--
Gitblit v1.7.1