IPInfo
查询 IP 地址归属地,双数据源交叉验证
API 接口
免费、无需注册的 IP 查询接口,支持 CORS 跨域调用。地理定位由本地 ip2region 与异步 ip-api.com 两个可查任意 IP 的数据源提供(Vercel Edge 仅用于取本机 IP,无法对指定 IP 定位);第三方数据由前端异步加载,互不阻塞。
GET/api/ip
返回请求者自身 IP(无指定 IP 时)+ 本地 ip2region 归属
GET/api/ip?ip=8.8.8.8
查询指定 IP 或域名的本地 + 边缘归属信息
GET/api/ipapi?ip=8.8.8.8
单独异步获取 ip-api.com 第三方数据(5s 超时)
请求示例
curl https://ipinfo.nobige.cn/api/ip
curl https://ipinfo.nobige.cn/api/ip?ip=8.8.8.8
curl https://ipinfo.nobige.cn/api/ipapi?ip=8.8.8.8
响应示例(/api/ip)
{
"ip": "8.8.8.8",
"sources": {
"ip2region": {
"country": "美国",
"isp": "Level3"
}
}
}
响应示例(/api/ipapi)
{
"ip": "8.8.8.8",
"source": "ip-api",
"data": {
"country": "United States",
"countryCode": "US",
"region": "Virginia",
"city": "Ashburn",
"lat": 39.03,
"lon": -77.5,
"timezone": "America/New_York",
"isp": "Google LLC"
}
}
JavaScript 调用
// 主接口(本地 + 边缘,即时)
const res = await fetch('/api/ip?ip=8.8.8.8').then(r => r.json());
console.log(res.ip, res.sources['ip2region']?.country);
// 异步补充第三方 ip-api.com 数据
const api = await fetch('/api/ipapi?ip=8.8.8.8').then(r => r.json());
console.log(api.data?.city, api.data?.isp);