📊 API 文档

基于 FastAPI 构建的 IP 地理位置、ASN、User-Agent 解析等查询服务接口说明。

核心查询 API


GET /api/json

查询当前访问 IP 的详细地理位置信息。

响应示例 (JSON)

{
  "code": 0,
  "msg": "success",
  "data": {
    "ip": "114.114.114.114",
    "as": {
      "number": 21859,
      "name": "ZEN-ECN",
      "info": ""
    },
    "addr": "114.114.0.0/16",
    "location": {
      "latitude": 34.7732,
      "longitude": 113.722
    },
    "country": {
      "code": "CN",
      "name": "中国"
    },
    "registered_country": {
      "code": "CN",
      "name": "中国"
    },
    "regions": [
      "江苏省",
      "南京市"
    ],
    "regions_short": [
      "江苏",
      "南京"
    ]
  }
}

GET /api/json/?ip={ip}

查询指定 IP 地址的详细地理位置信息。

路径参数

  • ip (string, 必填): 要查询的 IP 地址 (IPv4 或 IPv6)。

响应示例 (JSON)

// 结构与 /api/json 相同
{
  "code": 0,
  "msg": "success",
  "data": {
    // ...
  }
}

IP 溯源分析 API


GET /api/trace?ip={ip}

使用美团API进行IP溯源查询,获取详细的地理位置信息。

路径参数

  • ip (string, 必填): 要溯源的 IP 地址。

响应示例 (JSON)

{
  "code": 0,
  "msg": "success",
  "data": {
    "ip": "1.1.1.1",
    "latitude": 31.2,
    "longitude": 121.4,
    "country": "中国",
    "province": "上海市",
    "city": "上海",
    "district": "长宁区",
    "adcode": "310105",
    "fromwhere": "mars-mt",
    "detail": "孔乙己酒家(虹桥路店)",
    "area_name": "古北/仙霞新村",
    "is_foreign": false,
    "dp_city_id": 1,
    "open_city_name": "上海",
    "is_open": true
  }
}

User-Agent 解析 API


GET /api/ua

解析当前请求头中的 User-Agent 字符串。

响应示例 (JSON)

{
  "code": 0,
  "msg": "success",
  "data": {
    "device": "Nexus 5",
    "os": "Android 6.0",
    "browser": "Chrome Mobile",
    "version": "141.0.0",
    "raw": "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Mobile Safari/537.36 Edg/141.0.0.0"
  }
}

状态和工具 API


GET /api/status

获取 GeoIP 数据库文件的状态信息(大小、更新时间等)。

响应示例 (JSON)

{
    "code": 0,
    "msg": "success",
    "data": {
      "databases": {
        "GeoLite2-City.mmdb": {
          "exists": true,
          "last_modified": "2025-10-28 00:16:50",
          "size": 63245482
      },
      // ... 其他数据库状态
    }
  }
}