92 lines
1.8 KiB
Markdown
92 lines
1.8 KiB
Markdown
# 后端接口 TODO 清单 - 直播间模块
|
||
|
||
## 1. 获取直播间列表
|
||
**文件**: `MainActivity.java`
|
||
**接口路径**: `GET /api/rooms`
|
||
**请求参数**:
|
||
- page (可选): 页码
|
||
- pageSize (可选): 每页数量
|
||
- category (可选): 分类筛选
|
||
- type (可选): 类型筛选(follow/discover/nearby)
|
||
**返回数据**:
|
||
```json
|
||
{
|
||
"code": 200,
|
||
"data": [
|
||
{
|
||
"id": "string",
|
||
"title": "string",
|
||
"streamerName": "string",
|
||
"streamerId": "string",
|
||
"type": "string",
|
||
"isLive": "boolean",
|
||
"coverUrl": "string",
|
||
"viewerCount": "number",
|
||
"streamUrls": {
|
||
"flv": "string",
|
||
"hls": "string",
|
||
"rtmp": "string"
|
||
}
|
||
}
|
||
]
|
||
}
|
||
```
|
||
|
||
## 2. 获取直播间详情
|
||
**文件**: `RoomDetailActivity.java`
|
||
**接口路径**: `GET /api/rooms/{roomId}`
|
||
**请求参数**: roomId (路径参数)
|
||
**返回数据**: 同上,增加 description, startTime 等字段
|
||
|
||
## 3. 创建直播间
|
||
**文件**: `MainActivity.java`
|
||
**接口路径**: `POST /api/rooms`
|
||
**请求参数**:
|
||
```json
|
||
{
|
||
"title": "string",
|
||
"type": "string",
|
||
"description": "string"
|
||
}
|
||
```
|
||
**返回数据**:
|
||
```json
|
||
{
|
||
"code": 200,
|
||
"data": {
|
||
"id": "string",
|
||
"streamKey": "string",
|
||
"rtmpUrl": "string"
|
||
}
|
||
}
|
||
```
|
||
|
||
## 4. 删除直播间
|
||
**文件**: `MainActivity.java`
|
||
**接口路径**: `DELETE /api/rooms/{roomId}`
|
||
**请求参数**: roomId (路径参数)
|
||
**返回数据**:
|
||
```json
|
||
{
|
||
"code": 200,
|
||
"data": {
|
||
"success": true
|
||
}
|
||
}
|
||
```
|
||
|
||
## 5. 获取实时观看人数
|
||
**文件**: `RoomDetailActivity.java`
|
||
**接口路径**: `GET /api/rooms/{roomId}/viewers/count`
|
||
**请求参数**: roomId (路径参数)
|
||
**返回数据**:
|
||
```json
|
||
{
|
||
"code": 200,
|
||
"data": {
|
||
"viewerCount": "number"
|
||
}
|
||
}
|
||
```
|
||
**建议**: 使用 WebSocket 实时推送观看人数变化
|