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