Minecraft(我的世界)服务器信息查询免费API接口详解
本文详细解析接口盒子(apihz.cn)提供的免费Minecraft服务器信息查询API,包含完整参数说明、返回结果解析及PHP/Python调用示例。
API核心功能
通过指定Minecraft服务器地址,实时查询:
- 服务器版本/在线玩家数
- MOTD描述信息/网络延迟
- 插件模组列表/玩家示例
- 地图名称/游戏模式
- 网络协议/核心类型
- 服务器图标(Base64编码)
请求参数说明
参数名 | 必填 | 示例值 | 说明 |
---|---|---|---|
id | 是 | 10000000 | 用户中心数字ID |
key | 是 | 15he5h15ty854j5sr152hs2 | 用户中心通讯密钥 |
host | 是 | mc2.rhymc.com | 服务器域名/IP |
port | 否 | 25565 | 端口号(默认25565) |
xy | 否 | 0 | 查询协议: 0=自动协议(默认) 1=现代协议 2=旧版协议 3=UDP协议 4=兼容协议 |
返回结果解析
json
复制
{"code": 200, // 状态码(200成功/400错误)"msg": "查询成功", // 操作提示"address": "亚洲-中国-江苏省", // IP归属地"data": {"hostname": "43.248.139.152", // 服务器IP"port": 26549, // 服务器端口"status": true, // 查询状态"version": "Spigot 1.12.2", // 服务器版本"protocol": 340, // 网络协议版本"players": 9, // 在线玩家数"max_players": 2025, // 最大玩家数"motd": "世纪监狱服务器", // 清理后的描述"motd_raw": "§c§l世纪§3§l监狱", // 原始带格式描述"favicon": "BASE64_DATA", // 服务器图标"ping": 212, // 网络延迟(ms)"query_method": "现代协议", // 使用的协议"players_sample": [{ // 示例玩家列表"name": "§b状态:正常", "id": "2730fa19-39ec-3df4"}],"map": "未知", // 地图名称"game_mode": "未知" // 游戏模式}
}
重要说明:示例ID/KEY共享调用频次限制,需注册账号获取专属凭证
调用示例代码
PHP 示例
php
复制
<?php
$api_url = "https://cn.apihz.cn/api/fun/mcserver.php";
$params = ['id' => 'YOUR_USER_ID', // 替换为实际ID'key' => 'YOUR_API_KEY', // 替换为实际KEY'host' => 'mc.hypixel.net', // 目标服务器'port' => 25565, // 服务器端口'xy' => 0 // 自动协议
];// 构建请求URL
$request_url = $api_url . '?' . http_build_query($params);// 发送GET请求
$response = file_get_contents($request_url);// 解析结果
$result = json_decode($response, true);
if ($result['code'] == 200) {echo "服务器版本: " . $result['data']['version'] . "\n";echo "在线玩家: " . $result['data']['players'] . "/" . $result['data']['max_players'];
} else {echo "查询失败: " . $result['msg'];
}
?>
Python 示例
python
运行
复制
import requestsapi_url = "https://cn.apihz.cn/api/fun/mcserver.php"
params = {"id": "YOUR_USER_ID", # 替换为实际ID"key": "YOUR_API_KEY", # 替换为实际KEY"host": "mc.hypixel.net", # 目标服务器"port": 25565, # 服务器端口"xy": 0 # 自动协议
}try:# 发送GET请求response = requests.get(api_url, params=params)data = response.json()if data["code"] == 200:print(f"服务器状态: {data['data']['status']}")print(f"MOTD描述: {data['data']['motd']}")print(f"网络延迟: {data['data']['ping']}ms")else:print(f"错误: {data['msg']}")except Exception as e:print(f"请求异常: {str(e)}")
常见问题处理
-
查询失败(code=400):
- 检查ID/KEY是否正确
- 尝试更换
xy
参数协议类型 - 服务器可能禁止查询(非API问题)
-
数据延迟:
- 成功结果缓存1分钟
- 单次查询超时时间为2秒
-
高级用法:
- 结合Ping接口测试多地区延迟
- 解析
data.debug_log
获取详细查询日志
官方文档:Minecraft(我的世界)服务器信息查询 - 接口盒子 - 免费API-免费接口-站长工具-www.apihz.cn
通过此免费API可快速集成Minecraft服务器监控功能到您的应用或网站,实时掌握服务器运行状态。建议合理控制调用频率,避免触发平台限制。