package com.ruoyi.common.utils;

import org.slf4j.Logger;

import org.slf4j.LoggerFactory;

import com.ruoyi.common.config.Global;

import com.ruoyi.common.json.JSON;

import com.ruoyi.common.json.JSONObject;

import com.ruoyi.common.utils.http.HttpUtils;

/**

* 获取地址类

*

* @author ruoyi

*/

public class AddressUtils

{

private static final Logger log = LoggerFactory.getLogger(AddressUtils.class);

public static final String IP_URL = "http://ip.taobao.com/service/getIpInfo.php";

public static String getRealAddressByIP(String ip)

{

String address = "XX XX";

// 内网不查询

if (IpUtils.internalIp(ip))

{

return "内网IP";

}

if (Global.isAddressEnabled())

{

String rspStr = HttpUtils.sendPost(IP_URL, "ip=" + ip);

if (StringUtils.isEmpty(rspStr))

{

log.error("获取地理位置异常 {}", ip);

return address;

}

JSONObject obj;

try

{

obj = JSON.unmarshal(rspStr, JSONObject.class);

JSONObject data = obj.getObj("data");

String region = data.getStr("region");

String city = data.getStr("city");

address = region + " " + city;

}

catch (Exception e)

{

log.error("获取地理位置异常 {}", ip);

}

}

return address;

}

}

一键复制

编辑

原始数据

按行查看

历史

Logo

快速构建 Web 应用程序

更多推荐