2.3.1 下载封禁数据
获取封禁数据库的临时下载链接。
端点: GET /bans/download?token={token}
请求示例:
Bash
curl "https://api.ndpreforged.com/bans/download?token=aBcD1234EfGh5678IjKlMnOpQrSt"
Python 请求示例:
Python
import requests
# 获取下载URL
response = requests.get(
"https://api.ndpreforged.com/bans/download",
params={"token": "aBcD1234EfGh5678IjKlMnOpQrSt"}
)
data = response.json()
download_url = data['url']
# 下载数据库文件
download_response = requests.get(download_url)
with open("bans.db", "wb") as f:
f.write(download_response.content)
成功响应 (200):
JSON
{
"url": "http://localhost:8001/AbCd1234EfGh5678_database.db"
}
错误响应:
| 状态码 | 响应内容 | 说明 |
|---|---|---|
| 400 | {"error": "Missing token"} | 缺少 token |
| 400 | {"error": "Invalid token format"} | Token 格式无效 |
| 400 | {"error": "Token not found"} | Token 不存在 |
| 500 | {"error": "Failed to pack database"} | 打包数据库失败 |
| 500 | {"error": "Failed to get download URL"} | 获取下载 URL 失败 |
| 500 | {"error": "Server error"} | 服务器错误 |
2.3.2 完成下载清理
通知服务器下载完成,触发临时文件清理流程。
端点: POST /bans/download/done
请求参数:
JSON
{
"token": "aBcD1234EfGh5678IjKlMnOpQrSt"
}
请求示例:
Bash
curl -X POST https://api.ndpreforged.com/bans/download/done \
-H "Content-Type: application/json" \
-d '{
"token": "aBcD1234EfGh5678IjKlMnOpQrSt"
}'
成功响应 (200):
JSON
{
"message": "Download completed"
}
错误响应:
| 状态码 | 响应内容 | 说明 |
|---|---|---|
| 400 | {"error": "Missing token"} | 缺少 token |
| 400 | {"error": "Invalid token format"} | Token 格式无效 |
| 400 | {"error": "Session not found"} | 会话不存在 |
| 500 | {"error": "Failed to delete temp file"} | 删除临时文件失败 |
| 500 | {"error": "Server error"} | 服务器错误 |
说明: