📊 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
},
// ... 其他数据库状态
}
}
}