diff --git a/hutool-core/src/main/java/cn/hutool/core/net/NetUtil.java b/hutool-core/src/main/java/cn/hutool/core/net/NetUtil.java index 2442e5b98..c48be93b4 100755 --- a/hutool-core/src/main/java/cn/hutool/core/net/NetUtil.java +++ b/hutool-core/src/main/java/cn/hutool/core/net/NetUtil.java @@ -743,8 +743,8 @@ public class NetUtil { */ public static String getMultistageReverseProxyIp(String ip) { // 多级反向代理检测 - if (ip != null && ip.indexOf(",") > 0) { - final String[] ips = ip.trim().split(","); + if (ip != null && StrUtil.indexOf(ip, ',') > 0) { + final List ips = StrUtil.splitTrim(ip, ','); for (final String subIp : ips) { if (false == isUnknown(subIp)) { ip = subIp; diff --git a/hutool-core/src/test/java/cn/hutool/core/net/NetUtilTest.java b/hutool-core/src/test/java/cn/hutool/core/net/NetUtilTest.java index 6e5217114..fceb10d56 100755 --- a/hutool-core/src/test/java/cn/hutool/core/net/NetUtilTest.java +++ b/hutool-core/src/test/java/cn/hutool/core/net/NetUtilTest.java @@ -112,4 +112,11 @@ public class NetUtilTest { Assert.assertFalse(NetUtil.isInRange("114.114.114.114","192.168.3.4/32")); } + @Test + public void issueI64P9JTest() { + // 获取结果应该去掉空格 + final String ips = "unknown, 12.34.56.78, 23.45.67.89"; + final String ip = NetUtil.getMultistageReverseProxyIp(ips); + Assert.assertEquals("12.34.56.78", ip); + } }