免费无密钥Key · 开发者对接教程 + 在线接口调试工具 | 当前本机IP:216.73.217.70
接口路径:https://ip258.cn/api/ip_api.php
功能:传入IP地址,返回该IP归属地、运营商、城市、区域等完整信息
请求方式:GET
请求参数:ip 字符串,必填,无key参数
curl https://ip258.cn/api/ip_api.php?ip=1.1.1.1
功能:无需传IP,自动获取当前访客出口公网IP,零参数鉴权
请求方式:GET
请求参数:无
curl https://ip258.cn/api/ip_api.php
// PHP请求接口示例,无需key
unction ip258_query($ip) {
$url = 'https://ip258.cn/api/ip_api.php?ip=' . urlencode($ip);
$ch = curl_init($url);
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_TIMEOUT => 5,
CURLOPT_USERAGENT => 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36', // 必须带浏览器UA
]);
$body = curl_exec($ch);
curl_close($ch);
return json_decode($body, true); // code=-1 需自行处理网络/解析错误
}
$ret = ip258_query('1.1.1.1');
if (isset($ret['code']) && $ret['code'] === 200) {
echo '查询成功:' . $ret['data']['prov'] . $ret['data']['city'] . ' ' . $ret['data']['isp'] . PHP_EOL;
} else {
echo '查询失败 code=' . ($ret['code'] ?? '?') . ' msg=' . ($ret['msg'] ?? '未知错误') . PHP_EOL;
}
// JS fetch请求示例,不带密钥
async function queryIp(ip) {
const res = await fetch('https://ip258.cn/api/ip_api.php?ip=' + encodeURIComponent(ip));
const data = await res.json();
if (data.code !== 200) throw new Error('[' + data.code + '] ' + (data.msg || ''));
return data.data;
}
queryIp('1.1.1.1').then(d => console.log('查询成功:', d.prov, d.city, d.isp));
统一JSON格式,code=200为成功,其他状态码代表查询失败