IP 地址信息查询 API 接口(支持 IPv4 & IPv6)
由万码云开发平台提供的 IP 地址信息查询 API 接口,支持查询 IPv4 & IPv6 地址对应的大洲、国家或地区、城市等信息,以及时区、经纬度、网络范围等附加数据。API 响应快速,适用于网络优化、安全分析、位置服务等多种场景,为开发者提供便捷的地理信息查询工具。
接口地址(免费版)
POST https://wcode.net/api/ip/v3/info/free
注:免费版接口限制并发为 12 QPM(Query Per Minute,每分钟处理请求数)
接口地址(并发版)
并发服务费用:1元/2000次(按调用次数付费,即每调用 2000 次 IP 地址信息查询 API 接口的费用为 1 元),费用充值:https://wcode.net/apikey-recharge,费用发票:https://wcode.net/get-fapiao
POST https://wcode.net/api/ip/v3/info
请求方法
GET
/ POST
快速开始(请求示例)
(注:以下请求示例中的 API_KEY
需要替换后再发起请求。 获取 API_KEY
入口:https://wcode.net/get-apikey)
curl --request GET 'https://wcode.net/api/ip/v3/info/free?ip=114.80.176.55' --header 'Authorization: Bearer API_KEY'
请求头(Request Headers)
Header | 值 | 备注 | 示例 | 相关链接 |
---|---|---|---|---|
Authorization | Bearer API_KEY |
格式:Bearer + 空格 + API_KEY | Bearer sk-..... |
获取 API_KEY 入口:https://wcode.net/get-apikey |
Content-Type | application/json |
固定为 application/json |
请求参数
参数 | 必填 | 参数类型 | 默认值 | 说明 |
---|---|---|---|---|
ip | 是 | string | - | 要查询的 IP 地址(支持 IPv4 & IPv6) |
返回参数
返回参数 | 数据类型 | 说明 |
---|---|---|
status | string | 请求成功返回success ,失败返回failed |
error_message | string | 接口返回的错误消息。当status 为success 时,error_message 为空字符串 |
error_code | int 或 null | 接口返回的错误码。当status 为success 时,error_code 为 null |
data | object 或 null | 接口返回的数据。当status 为failed 时,data 为 null |
data.continent | object | 大洲信息 |
data.region | object | 地区信息 |
data.subdivision | object | 细分地区信息 |
data.city | object | 城市信息 |
data.extra_info | object | 附加信息 |
(⚠️当data
为object
时,data
内任意子字段的值都有可能为null
,请开发者根据实际情况处理空值,避免程序异常或逻辑错误)
响应头(Response Headers)
Header | 说明 | 示例 | 相关链接 |
---|---|---|---|
X-Account-Balance | API_KEY 余额(元) | 123.0165 |
API_KEY 费用充值入口:https://wcode.net/apikey-recharge |
Python 代码示例(Requests)
import requests
import json
url = "https://wcode.net/api/ip/v3/info/free?ip=114.80.176.55"
payload = {}
headers = {
'Content-Type': 'application/json',
'Authorization': 'Bearer API_KEY' # TODO: 这里的 API_KEY 需要替换,获取 API_KEY 入口:https://wcode.net/get-apikey
}
response = requests.request("GET", url, headers=headers, data=payload)
print(response.text)
Java 代码示例(OkHttp)
OkHttpClient client = new OkHttpClient().newBuilder().build();
MediaType mediaType = MediaType.parse("text/plain");
RequestBody body = RequestBody.create(mediaType, "");
Request request = new Request.Builder()
.url("https://wcode.net/api/ip/v3/info/free?ip=114.80.176.55")
.method("GET", body)
.addHeader("Content-Type", "application/json")
.addHeader("Authorization", "Bearer API_KEY") // TODO: 这里的 API_KEY 需要替换,获取 API_KEY 入口:https://wcode.net/get-apikey
.build();
Response response = client.newCall(request).execute();
PHP 代码示例(Guzzle)
<?php
$client = new Client();
$headers = [
'Authorization' => 'Bearer API_KEY' // TODO: 这里的 API_KEY 需要替换,获取 API_KEY 入口:https://wcode.net/get-apikey
];
$request = new Request('GET', 'https://wcode.net/api/ip/v3/info/free?ip=114.80.176.55', $headers);
$res = $client->sendAsync($request)->wait();
echo $res->getBody();
(...其他编程语言可参考下方 curl http 请求示例进行调用)
请求示例 1(IPv4,GET请求)
curl --request GET 'https://wcode.net/api/ip/v3/info/free?ip=114.80.176.55' --header 'Authorization: Bearer API_KEY'
响应示例 1
{
"status": "success",
"error_message": "",
"error_code": null,
"data": {
"continent": {
"code": "AS",
"name": "亚洲",
"name_en": "Asia"
},
"region": {
"iso_code": "CN",
"name": "中国",
"name_en": "China"
},
"subdivision": {
"iso_code": "SH",
"name": "上海",
"name_en": "Shanghai"
},
"city": {
"name": "上海",
"name_en": "Shanghai"
},
"extra_info": {
"ip_address": "114.80.176.55",
"ip_network": "114.80.0.0/16",
"time_zone": "Asia/Shanghai",
"latitude": 31.2222,
"longitude": 121.4581,
"accuracy_radius": "10km"
}
}
}
请求示例 2(IPv6,POST请求)
curl --request POST 'https://wcode.net/api/ip/v3/info/free' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer API_KEY' \
--data '{
"ip": "240e:96c:6000:2503:3::3d9"
}'
响应示例 2
{
"status": "success",
"error_message": "",
"error_code": null,
"data": {
"continent": {
"code": "AS",
"name": "亚洲",
"name_en": "Asia"
},
"region": {
"iso_code": "CN",
"name": "中国",
"name_en": "China"
},
"subdivision": {
"iso_code": null,
"name": null,
"name_en": null
},
"city": {
"name": null,
"name_en": null
},
"extra_info": {
"ip_address": "240e:96c:6000:2503:3::3d9",
"ip_network": "240e:800::/21",
"time_zone": "Asia/Shanghai",
"latitude": 34.7732,
"longitude": 113.722,
"accuracy_radius": "1000km"
}
}
}
异常响应示例
{
"status": "failed",
"error_message": "ip 必须是有效的 IP 地址。",
"error_code": 400,
"data": null
}