zhibo/android-app/后端接口TODO清单-总览.md

144 lines
4.2 KiB
Markdown
Raw Normal View History

# 后端接口 TODO 清单 - 总览
本文档汇总了 Android 直播应用所有需要接入的后端接口。
## 📋 模块清单
1. [用户认证模块](./后端接口TODO清单-用户认证.md) - 3个接口
2. [用户资料模块](./后端接口TODO清单-用户资料.md) - 4个接口
3. [用户头像模块](./后端接口TODO清单-用户头像.md) - 3个接口
4. [直播间模块](./后端接口TODO清单-直播间.md) - 5个接口
5. [消息聊天模块](./后端接口TODO清单-消息聊天.md) - 8个接口
6. [消息发送模块](./后端接口TODO清单-消息发送.md) - 3个接口
7. [直播间弹幕模块](./后端接口TODO清单-直播间弹幕.md) - 3个接口含WebSocket
8. [礼物打赏模块](./后端接口TODO清单-礼物打赏.md) - 5个接口
9. [作品管理模块](./后端接口TODO清单-作品管理.md) - 10个接口
10. [评论功能模块](./后端接口TODO清单-评论功能.md) - 4个接口
11. [社交功能模块](./后端接口TODO清单-社交功能.md) - 8个接口
12. [搜索功能模块](./后端接口TODO清单-搜索功能.md) - 6个接口
13. [分类管理模块](./后端接口TODO清单-分类管理.md) - 3个接口
14. [图片上传模块](./后端接口TODO清单-图片上传.md) - 5个接口
15. [通知推送模块](./后端接口TODO清单-通知推送.md) - 4个接口含FCM和WebSocket
16. [支付集成模块](./后端接口TODO清单-支付集成.md) - 4个接口含微信/支付宝SDK
17. [其他功能模块](./后端接口TODO清单-其他功能.md) - 10个接口
**总计**: 约 88+ 个接口
## 🔑 通用规范
### 请求头
所有需要认证的接口都需要在请求头中携带 token
```
Authorization: Bearer {token}
```
### 响应格式
所有接口统一返回格式:
```json
{
"code": 200,
"message": "success",
"data": {}
}
```
### 错误码
- 200: 成功
- 400: 请求参数错误
- 401: 未登录或token过期
- 403: 无权限
- 404: 资源不存在
- 500: 服务器错误
## 🚀 优先级建议
### 第一优先级(核心功能)
1. 用户认证(登录/注册/验证码)
2. 直播间列表和详情
3. 用户资料获取和更新
4. 图片上传(头像、作品封面)
### 第二优先级(社交功能)
5. 消息聊天(会话列表、发送消息)
6. 直播间弹幕(发送、接收)
7. 关注/粉丝功能
8. 用户头像加载
### 第三优先级(增值功能)
9. 礼物打赏
10. 作品管理(发布、编辑、删除)
11. 评论功能
12. 图片/视频上传(作品内容)
### 第四优先级(辅助功能)
13. 搜索功能(含搜索建议)
14. 通知功能(含推送)
15. 观看历史
16. 分类管理
## 📝 实时通信方案
建议使用 WebSocket 实现以下实时功能:
1. 直播间弹幕消息推送
2. 私信消息推送
3. 观看人数实时更新
4. 礼物动画实时推送
5. 消息已读状态更新
6. 通知实时推送
7. 用户在线状态更新
备选方案轮询每3-5秒请求一次
## 🔐 安全建议
1. 所有接口使用 HTTPS
2. Token 有效期建议 7 天,支持刷新
3. 敏感操作(充值、打赏)需要二次验证
4. 上传文件需要限制大小和类型
5. 接口需要限流防止恶意请求
6. 图片/视频上传需要病毒扫描
7. 用户输入需要过滤敏感词
## 📦 数据模型参考
详见各模块文档中的返回数据格式。
## 🎯 接口开发建议
### 分页参数统一
所有列表接口建议使用统一的分页参数:
- `page`: 页码从1开始
- `pageSize`: 每页数量默认20
返回格式:
```json
{
"code": 200,
"data": {
"items": [],
"total": 100,
"page": 1,
"pageSize": 20,
"hasMore": true
}
}
```
### 文件上传建议
1. 使用对象存储服务OSS/S3
2. 前端直传,减轻服务器压力
3. 生成临时上传凭证
4. 上传完成后回调通知服务器
### WebSocket 连接管理
1. 连接时验证 token
2. 心跳保持30秒一次
3. 断线自动重连
4. 消息队列缓存(离线消息)
### 缓存策略
1. 用户信息缓存Redis过期时间1小时
2. 直播间列表缓存Redis过期时间5分钟
3. 分类列表缓存Redis过期时间1天
4. CDN 缓存静态资源(图片、视频)