IP Checker Logo

API 和开发者文档

一个轻量且易于预测的 JSON API。所有端点均通过我们的服务商抽象层在服务器端进行代理,提供响应规范化、轻量缓存以及优雅的错误处理。

API 端点

GET /api/my-ip

返回调用者公网 IP 的地理定位和网络数据(由服务器端视角的连接识别)。

curl https://ipcheck.mubarokah.com/api/my-ip

GET /api/lookup?q=<ip|domain>

查询任何 IPv4、IPv6 地址或纯域名。不支持协议前缀(如 http://)和路径。

curl "https://ipcheck.mubarokah.com/api/lookup?q=8.8.8.8"

POST /api/bulk

批量查询(每次最多 50 个)。并发限制在服务器端控制。

curl -X POST -H 'content-type: application/json' \
  -d '{"queries":["8.8.8.8","1.1.1.1","example.com"]}' \
  https://ipcheck.mubarokah.com/api/bulk

响应数据格式

{
  "ok": true,
  "query": "8.8.8.8",
  "ip": "8.8.8.8",
  "ipVersion": "IPv4",
  "location": {
    "continent": "North America",
    "country": "United States",
    "countryCode": "US",
    "regionName": "Virginia",
    "city": "Ashburn",
    "zip": "20149",
    "lat": 39.0438,
    "lon": -77.4874,
    "timezone": "America/New_York",
    "utcOffsetSeconds": -14400,
    "currency": "USD"
  },
  "network": {
    "isp": "Google LLC",
    "org": "Google Public DNS",
    "as": "AS15169 Google LLC",
    "asname": "GOOGLE",
    "reverse": "dns.google"
  },
  "flags": { "mobile": false, "proxy": false, "hosting": true }
}

错误代码说明

频次限制与缓存

查询结果在服务器端缓存 10 分钟。上游服务商的免费公共层级有严格的频次限制,仅供非商业用途。对于生产环境流量,我们建议配置商业服务商(请参考下方环境变量配置说明)。

服务商抽象层

在服务器上设置以下环境变量。敏感密钥绝不会暴露给浏览器端。

IP_PROVIDER=ip-api            # or ip-api-pro
IP_API_KEY=...                # required for pro
IP_API_BASE=http://ip-api.com

注意事项