From f3d0bf6c2697d8a79059bbba5eb9af7e92d7208d Mon Sep 17 00:00:00 2001 From: RuoYi <yzz_ivy@163.com> Date: 星期三, 13 五月 2020 21:11:14 +0800 Subject: [PATCH] 更换IP地址查询接口 --- ruoyi/src/main/java/com/ruoyi/common/utils/ip/AddressUtils.java | 30 ++++++++++++++++++++---------- 1 files changed, 20 insertions(+), 10 deletions(-) diff --git a/ruoyi/src/main/java/com/ruoyi/common/utils/ip/AddressUtils.java b/ruoyi/src/main/java/com/ruoyi/common/utils/ip/AddressUtils.java index 2709f45..8402a0d 100644 --- a/ruoyi/src/main/java/com/ruoyi/common/utils/ip/AddressUtils.java +++ b/ruoyi/src/main/java/com/ruoyi/common/utils/ip/AddressUtils.java @@ -16,11 +16,15 @@ { private static final Logger log = LoggerFactory.getLogger(AddressUtils.class); - public static final String IP_URL = "http://ip.taobao.com/service/getIpInfo.php"; + // IP地址查询 + public static final String IP_URL = "http://whois.pconline.com.cn/ipJson.jsp"; + + // 未知地址 + public static final String UNKNOWN = "XX XX"; public static String getRealAddressByIP(String ip) { - String address = "XX XX"; + String address = UNKNOWN; // 内网不查询 if (IpUtils.internalIp(ip)) { @@ -28,17 +32,23 @@ } if (RuoYiConfig.isAddressEnabled()) { - String rspStr = HttpUtils.sendPost(IP_URL, "ip=" + ip); - if (StringUtils.isEmpty(rspStr)) + try + { + String rspStr = HttpUtils.sendGet(IP_URL, "ip=" + ip + "&json=true"); + if (StringUtils.isEmpty(rspStr)) + { + log.error("获取地理位置异常 {}", ip); + return UNKNOWN; + } + JSONObject obj = JSONObject.parseObject(rspStr); + String region = obj.getString("pro"); + String city = obj.getString("city"); + return String.format("%s %s", region, city); + } + catch (Exception e) { log.error("获取地理位置异常 {}", ip); - return address; } - JSONObject obj = JSONObject.parseObject(rspStr); - JSONObject data = obj.getObject("data", JSONObject.class); - String region = data.getString("region"); - String city = data.getString("city"); - address = region + " " + city; } return address; } -- Gitblit v1.9.2