ソースを参照

获取客户端ip打印

dsx 2 年 前
コミット
de0e425003
1 ファイル変更11 行追加0 行削除
  1. 11 0
      src/main/java/com/fdkankan/gateway/util/WebUtil.java

+ 11 - 0
src/main/java/com/fdkankan/gateway/util/WebUtil.java

@@ -3,9 +3,14 @@ package com.fdkankan.gateway.util;
 import cn.hutool.core.util.StrUtil;
 import cn.hutool.http.useragent.UserAgent;
 import cn.hutool.http.useragent.UserAgentUtil;
+import lombok.extern.slf4j.Slf4j;
 import org.springframework.http.HttpHeaders;
 import org.springframework.http.server.reactive.ServerHttpRequest;
 
+import java.net.InetAddress;
+import java.net.UnknownHostException;
+
+@Slf4j
 public class WebUtil {
 
     private final static String UNKNOWN = "unknown";
@@ -18,6 +23,7 @@ public class WebUtil {
     public static String getIpAddress(ServerHttpRequest request) {
         HttpHeaders headers = request.getHeaders();
         String ip = headers.getFirst("X-Forwarded-For");
+        log.info("X-Forwarded-For : {}", ip);
         if(StrUtil.isNotBlank(ip) && UNKNOWN.equalsIgnoreCase(ip)){
             if(ip.indexOf(",") != -1){
                 ip = ip.split(",")[0];
@@ -25,14 +31,19 @@ public class WebUtil {
             }
         }
         ip = headers.getFirst("Proxy-Client-IP");
+        log.info("Proxy-Client-IP : {}", ip);
         if(StrUtil.isNotBlank(ip)) return ip;
         ip = headers.getFirst("WL-Proxy-Client-IP");
+        log.info("WL-Proxy-Client-IP : {}", ip);
         if(StrUtil.isNotBlank(ip)) return ip;
         ip = headers.getFirst("HTTP-CLIENT-IP");
+        log.info("HTTP-CLIENT-IP : {}", ip);
         if(StrUtil.isNotBlank(ip)) return ip;
         ip = headers.getFirst("HTTP-X-FORWARDED-FOR");
+        log.info("HTTP-X-FORWARDED-FOR : {}", ip);
         if(StrUtil.isNotBlank(ip)) return ip;
         ip = headers.getFirst("X-Real-IP");
+        log.info("X-Real-IP : {}", ip);
         if(StrUtil.isNotBlank(ip)) return ip;
         ip = request.getRemoteAddress().getAddress().getHostAddress();
         return ip;