$ip = '101.24.184.232';

$ch = curl_init("https://ipapi.ipip.net/find?addr={$ip}");
curl_setopt_array($ch, [
    CURLOPT_HEADER => 0,
    CURLOPT_HTTPHEADER => [
        'token:0123456789012345678901234567890123456789',
        'User-Agent: ipapi-php-sdk',
    ],
    CURLOPT_TIMEOUT => 60,
    CURLOPT_CONNECTTIMEOUT => 30,
    CURLOPT_RETURNTRANSFER => 1,
    CURLOPT_FOLLOWLOCATION => 1,
    CURLOPT_SSL_VERIFYHOST => 0,
    CURLOPT_SSL_VERIFYPEER => 0,
]);
$body = curl_exec($ch);
curl_close($ch);
$json = json_decode($body, 1);
if (isset($json['ret']) && $json['ret'] == 'ok')
{
    $country = $json['data'][0];
    $province = $json['data'][1];
    $city = $json['data'][2];

    var_dump($country, $province, $city);
}


            

import org.apache.http.HttpEntity;
import org.apache.http.client.config.RequestConfig;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;

import java.io.IOException;

public class Main {

    public static void main(String[] args) {

        RequestConfig config = RequestConfig.custom()
                .setConnectTimeout(15000)
                .setConnectionRequestTimeout(15000)
                .setSocketTimeout(15000)
                .build();

        HttpGet get = new HttpGet("http://ipapi.ipip.net/query/118.28.1.1");
        get.addHeader("Token", "0123456789012345678901234567890123456789");
        get.addHeader("User-Agent", "ipapi-java-sdk");
        get.setConfig(config);

        CloseableHttpClient httpclient = HttpClients.createDefault();

        try {
            CloseableHttpResponse response = httpclient.execute(get);
            if (response.getStatusLine().getStatusCode() == 200) {
                HttpEntity entity2 = response.getEntity();
                System.out.println(EntityUtils.toString(entity2));
            } else {
                // 接口异常,比如每日/每小时请求次数达到上限
                // 处理异常情况的代码
            }
            response.close();
        } catch (IOException e) {
            e.printStackTrace();
            // 处理异常情况的代码
        }
    }
}
        
>>> import requests
>>> r = requests.get("https://ipapi.ipip.net/find?addr=118.28.8.8", headers={"token":"XX"})
>>> r.json()
>>> {'ret': 'ok', 'data': ['中国', '天津', '天津', '', '鹏博士', '39.125032', '117.295532', 'Asia/Shanghai', 'UTC+8', '120000', '86', 'CN', 'AP']}
            
req, _ := http.NewRequest("GET", "https://ipapi.ipip.net/query/118.28.1.1", nil)
req.Header.Set("token", "XX")
req.Header.Set("User-Agent", "ipapi-golang-sdk")
res, e := http.DefaultClient.Do(req)
if e == nil {
    all, err := ioutil.ReadAll(res.Body)
    if err == nil {
        fmt.Println(string(all)) // output
    }
    res.Body.Close()
}
            
npm install axios
var axios = require("axios");

axios.get('https://ipapi.ipip.net/query/118.28.1.1?token=XX')
  .then(function(response){
      if (response.data.ret == 'ok') {
        console.log(response.data.data)
      }
  })
  .catch(function (error) {
    console.log(error.response.data);
    console.log(error.response.status);
    console.log(error.response.headers);
  });
            
行业报告
云计算服务商2019-1H
云计算服务商2018-2H
云计算服务商2018-1H
云计算服务商2017-2H
云计算服务商2017-1H
产品服务
IP 地理位置定位
IP 应用场景
IPv4 高精度定位
IPv6 地理位置库
IPv4 风险画像
网络安全基础数据
BestTrace
Windows
Mac OS
iOS
Android
Linux
网络工具
TraceRoute
PING
IP/ASN Whois 查询
Country ASNs
Internet eXchange
Best NetTools
关于IPIP
公司简介
工作机会
隐私声明
联系我们
联系我们
电     话:010-85867767
售后技术QQ:290525907
邮     件:sales(at)ipip.com
用户交流群:907401083
数据反馈:correction(at)ipip.com

© 2013 - 2025 北京天特信科技有限公司 所有权利保留

本网站 SSL 证书由 TRUSTASIA 提供
本网站安全防护服务由 上海云盾 提供

京ICP备15064887号-6  京公网安备 11010502045129号