package com.greenorange.promotion;

import com.alibaba.fastjson.JSONObject;
import org.junit.jupiter.api.Test;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;

public class IpDemo {

    public static void main(String[] args) {
        getIpLocation("42.100.248.19");
    }


    public static String getIpLocation(String ip) {
        try {
            // 发送请求到ip-api服务
            String url = "http://ip-api.com/json/" + ip + "?lang=zh-CN"; // 获取中文结果
            URL obj = new URL(url);
            HttpURLConnection con = (HttpURLConnection) obj.openConnection();
            con.setRequestMethod("GET");

            BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream()));
            String inputLine;
            StringBuffer response = new StringBuffer();

            while ((inputLine = in.readLine()) != null) {
                response.append(inputLine);
            }
            in.close();

            // 解析JSON返回结果
            JSONObject jsonResponse = JSONObject.parseObject(response.toString());
            String country = jsonResponse.getString("country");    // 国家
            String region = jsonResponse.getString("regionName");  // 省
            String city = jsonResponse.getString("city");          // 城市
            System.out.println(jsonResponse);
            System.out.println(country + "-" + region + "-" + city);
            return country + "-" + region + "-" + city;  // 返回位置
        } catch (Exception e) {
            e.printStackTrace();
        }
        return "未知";
    }




}
