DEVELOPER REFERENCE
API 文档
基础地址:https://geo.zeroroute.net。所有接口仅接受 GET,返回 JSON;网页查询返回 HTML,不提供匿名 JSON API。
授权与 Token
请联系站点管理员申请 Token。Token 由管理员在服务端签发、配置并安全交付,没有公开自助签发接口。管理员撤销后重启应用生效。
每次请求设置 Authorization: Bearer YOUR_TOKEN,将 YOUR_TOKEN 替换为管理员交付的真实 Token。不要将 Token 写入前端代码、公开仓库或日志;只通过 HTTPS 使用。
参数
GET /query:必填ip,IPv4 或 IPv6 字面地址,不接受域名。GET /ping:必填ip,仅公网 IPv4。GET /tcping:必填ip(公网 IPv4)与port(整数 1–65535)。- Ping / TCPing 可选
count:整数 1–4,默认 4;可选timeout:每次等待毫秒数,整数 1–1000,默认 1000。ICMP 受系统命令影响,实际等待粒度可能向上取整到秒。
调用示例
以下为可运行的请求格式,不是预先测得的结果。请先替换 YOUR_TOKEN。
curl --fail-with-body -H 'Authorization: Bearer YOUR_TOKEN' 'https://geo.zeroroute.net/query?ip=8.8.8.8'curl --fail-with-body -H 'Authorization: Bearer YOUR_TOKEN' 'https://geo.zeroroute.net/ping?ip=1.1.1.1&count=1&timeout=1000'curl --fail-with-body -H 'Authorization: Bearer YOUR_TOKEN' 'https://geo.zeroroute.net/tcping?ip=1.1.1.1&port=443&count=1&timeout=1000'响应字段
- IP 查询固定返回:
countryCode(字符串,国家代码)、countryName(字符串,中文国家名)、subdivisionName(字符串,中文地区名,可能回退到城市名)、asnNumber(整数 ASN)、asnName(字符串,ASN 组织名)。无记录或无中文名称的字段为null,并非错误。 - 探测返回
type(ping 或 tcping)、ip(字符串)、sent/received(发送/成功次数,整数)、lossRate(失败比例,0–1),以及minMs/avgMs/maxMs(毫秒数)。全部失败时三项延迟均为null;TCPing 另返回整数port。 - HTTP 200 只表示测试已执行,不保证目标连通。探测结果仅反映服务端到目标的链路。
错误与限制
API 错误格式:{"error":"说明"}。400 参数缺失、格式或范围错误;401 Token 缺失或无效;403 目标被网络策略拒绝;404 路径不存在或探测已关闭;405 方法不允许;414 URL 过长;503 探测并发已满、系统无 ping 命令或 ICMP 权限不足;500 内部错误。请按 HTTP 状态处理,不依赖错误文案。
禁止探测私网、回环、链路本地、保留地址;部署策略可以进一步限制公网地址。API 并发受服务端配置约束,不要无限重试。网页另有每应用实例匿名限频(429,多实例额度会累加)、请求体限制(413)、格式限制(415)和读取超时(408);网页校验失败返回 HTML。