API 文档
NDPR RESTful API 完整参考
概述
NDPR 提供完整的 RESTful API,支持封禁管理、Token 认证、数据统计等功能。
基础信息
| 项目 | 值 |
|---|
| Base URL | http://localhost:5030 |
| v1 兼容 | http://localhost:5020 |
| 认证方式 | Token + SHA256 Key |
| 数据格式 | JSON |
响应格式
成功响应
{
"message": "Success message",
"data": {}
}
错误响应
{
"error": "Error description"
}
端点列表
1. 封禁管理
| 方法 | 端点 | 说明 |
|---|
| POST | /bans/add | 添加封禁 |
| POST | /bans/del | 删除封禁 |
| POST | /bans/bind | 绑定附加信息 |
| POST | /bans/cbind | 取消绑定 |
| GET | /bans/download | 下载封禁数据 |
| POST | /bans/download/done | 完成下载 |
2. Token 管理
| 方法 | 端点 | 说明 |
|---|
| POST | /token/get | 创建 Token |
| POST | /token/del | 删除 Token |
| GET | /token/list | 查询 Token |
| POST | /token/auth | 验证 Token |
| POST | /token/permission/add | 授予权限 |
| POST | /token/permission/del | 撤销权限 |
| POST | /token/permission/auth | 检查权限 |
3. UUID
| 方法 | 端点 | 说明 |
|---|
| POST | /uuid/getuuid | 生成 UUID |
4. 统计
| 方法 | 端点 | 说明 |
|---|
| POST | /stats/a | 上报拦截 |
| GET | /stats/s | 获取统计 |
5. v1 兼容
6. 系统
示例请求
cURL
# 添加封禁
curl -X POST http://localhost:5030/bans/add \
-H "Content-Type: application/json" \
-d '{
"token": "your_token",
"player_id": "player123",
"ip": "192.168.1.1",
"online": false
}'
Python
import requests
API_URL = "http://localhost:5030"
# 添加封禁
response = requests.post(
f"{API_URL}/bans/add",
json={
"token": "your_token",
"player_id": "player123",
"ip": "192.168.1.1",
"online": False
}
)
print(response.json())
JavaScript
// 添加封禁
fetch('http://localhost:5030/bans/add', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify({
token: 'your_token',
player_id: 'player123',
ip: '192.168.1.1',
online: false
})
})
.then(res => res.json())
.then(data => console.log(data));
错误代码
| 状态码 | 错误消息 | 说明 |
|---|
| 400 | Missing params | 缺少参数 |
| 400 | Invalid format | 格式无效 |
| 400 | Already banned | 已存在 |
| 401 | Auth failed | 认证失败 |
| 401 | No permission | 权限不足 |
| 404 | Not found | 不存在 |
| 500 | Server error | 服务器错误 |
速率限制
暂无速率限制,但建议:
批量操作使用批量接口合理设置同步间隔避免高频请求