chatserver/API文档3.0.md

2.9 KiB

# API 文档

## 基础信息
- **基础URL**: `http://localhost:5000/api`
- **数据格式**: 所有请求和响应均为JSON格式

---

## 用户管理

### 获取所有用户
- **URL**: `/users`
- **方法**: GET
- **响应示例**:
  ```json
  [
    {"id": 1, "username": "user1"},
    {"id": 2, "username": "user2"}
  ]

创建用户

  • URL: /users
  • 方法: POST
  • 请求体示例:
    {
      "username": "newuser",
      "password": "password123"
    }
    
  • 响应示例:
    {"success": true}
    

删除用户

  • URL: /users/<username>
  • 方法: DELETE
  • 响应示例:
    {"success": true}
    

消息管理

获取消息

  • URL: /messages
  • 方法: GET
  • 查询参数:
    • sender (可选): 发送者用户名
    • receiver (可选): 接收者用户名或群组名
    • is_group (可选): true/false
    • start_time (可选): YYYY-MM-DD HH:MM:SS
    • end_time (可选): YYYY-MM-DD HH:MM:SS
  • 响应示例:
    [
      {
        "id": 1,
        "sender": "user1",
        "receiver": "user2",
        "message": "Hello",
        "timestamp": "2023-01-01 12:00:00",
        "is_group": false
      }
    ]
    

删除消息

  • URL: /messages/<message_id>
  • 方法: DELETE
  • 响应示例:
    {"success": true}
    

群组管理

获取所有群组

  • URL: /groups
  • 方法: GET
  • 响应示例:
    [
      {
        "name": "group1",
        "members": ["user1", "user2"]
      }
    ]
    

创建群组

  • URL: /groups
  • 方法: POST
  • 请求体示例:
    {
      "group_name": "newgroup",
      "members": ["user1", "user2"]
    }
    
  • 响应示例:
    {"success": true}
    

删除群组

  • URL: /groups/<group_name>
  • 方法: DELETE
  • 响应示例:
    {"success": true}
    

添加群组成员

  • URL: /groups/<group_name>/members
  • 方法: POST
  • 请求体示例:
    {
      "username": "user3"
    }
    
  • 响应示例:
    {"success": true}
    

移除群组成员

  • URL: /groups/<group_name>/members/<username>
  • 方法: DELETE
  • 响应示例:
    {"success": true}
    

服务器管理

获取服务器状态

  • URL: /server/status
  • 方法: GET
  • 响应示例:
    {
      "status": "running",
      "users_online": 5,
      "groups": 3,
      "start_time": "2023-01-01 10:00:00"
    }
    

重启服务器

  • URL: /server/restart
  • 方法: POST
  • 响应示例:
    {"success": true}
    

关闭服务器

  • URL: /server/shutdown
  • 方法: POST
  • 响应示例:
    {"success": true}
    

使用说明

  1. 启动主聊天服务端: python chat_server.py
  2. 启动API服务端: python api_server.py
  3. 通过HTTP请求访问 http://localhost:5000/api 下的端点