IP Geolocation API

GET /api.php?ip={ip} 基于 ip2region · 返回中文地理位置

请求参数

参数名 类型 必填 描述
ip string * 需要查询的 IPv4 地址(例如 8.8.8.8)
请求示例
GET /api.php?ip=8.8.8.8 HTTP/1.1
Host: ip.api.xiyoua.cn

curl "http://ip.api.xiyoua.cn/api.php?ip=8.8.8.8"

仅支持 IPv4 地址,传入 IPv6 或其他非法格式将返回错误。

响应格式

Content-Type: application/json; charset=utf-8

成功响应 (HTTP 200)
{
  "ip": "8.8.8.8",
  "location": "美国/加利福尼亚/谷歌"
}

location 字段格式:国家/省份(或城市)/运营商 (英文地名已自动翻译为中文)

错误响应
{
  "error": "Invalid IP address"
}

常见错误类型:

  • Missing IP parameter —— 未提供 ip 参数
  • Invalid IP address —— IP 格式非法
  • IP location not found —— 数据库中无此 IP 记录
  • Database connection failed —— 服务器内部错误

location 字段说明

location 字符串以 / 分隔,各部分含义如下:

位置含义示例
第1段国家中国、美国
第2段省份/州 (优先) 或 城市北京、加利福尼亚
第3段运营商 / ISP电信、谷歌、Cloudflare

示例对照:

8.8.8.8         → 美国/加利福尼亚/谷歌
114.114.114.114 → 中国/江苏/南京/电信
101.96.194.158  → 中国/北京/电信