update README.md.

Signed-off-by: Bravepping <1131302745@qq.com>
This commit is contained in:
2025-04-23 15:31:28 +00:00
committed by Gitee
parent 251e8446d6
commit 6bb06266b0

View File

@@ -1,27 +1,43 @@
# NBA赛事共享在线观看平台 # NBA赛事共享在线观看平台
## 项目概述 ## 项目简介
一个基于SpringBoot+Vue3的NBA赛事实时直播平台通过腾讯体育接口获取赛事数据实现赛程展示、直播观看、数据持久化等功能。采用前后端分离架构支持多用户并发访问。
本项目是一个基于 NBA 赛事的共享在线观看平台,支持实时展示赛程、赛事直播播放等功能。用户可以便捷地浏览最新赛程信息,并使用内嵌播放器观看赛事直播。平台通过整合腾讯体育资源,自动化采集与维护直播数据,实现赛事数据的高效管理与分享。
## 技术栈 ## 技术栈
### 后端技术 ### 后端技术
- **核心框架**: Spring Boot 3.x - **Spring Boot**:构建高性能的后端服务。
- **数据存储**: - **MyBatis**:简化数据库操作,灵活执行 SQL。
- MySQL (赛事数据持久化) - **MySQL**:存储赛程、直播间等核心数据。
- Redis (缓存腾讯体育Cookie和热点数据) - **Redis**缓存腾讯体育 Cookie 及直播数据,提升请求效率。
- **数据访问**: MyBatis + MyBatis Dynamic SQL - **Scheduled Task**:定时任务机制,周期性同步直播信息。
- **任务调度**: Spring Scheduler
- **其他**:
- WebFlux(接口调用)
- JWT (鉴权预留)
### 前端技术 ### 前端技术
- **核心框架**: Vue 3 + Composition API - **Vue 3**:构建响应式单页应用。
- **状态管理**: Pinia - **Pinia**:集中式状态管理,存储赛程相关数据。
- **路由管理**: Vue Router 4 - **Vue Router**:实现页面间路由导航。
- **网络请求**: Axios - **Axios**:与后端进行 HTTP 通信。
- **视频播放**: DPlayer - **DPlayer**:集成播放器,用于播放赛事直播流。
- **UI组件**: Element Plus (可选)
## 系统架构 ## 核心功能实现
- **Cookie自动更新与存储**:后端首次手动配置腾讯体育 Cookie 并保存至 Redis通过定时任务定期刷新 Cookie保证接口调用的稳定性。
- **直播数据采集**:根据数据库中的赛程 ID携带 Cookie 向腾讯体育接口发起请求,抓取对应的直播间信息,并定期存储至直播间信息表。
- **前端展示与播放**
- 使用 Axios 获取后端赛程数据,展示赛程信息。
- 用户点击感兴趣的赛程后,前端将相关 ID 保存到 Pinia 中,用于后续状态追踪与页面展示。
- 基于 DPlayer 实现直播流的嵌入播放体验。
## 项目亮点
- 实现与第三方平台(腾讯体育)无官方 API 接口的半自动数据采集与更新。
- 利用 Redis 缓存与定时刷新机制,提升系统稳定性与数据实时性。
- 前后端分离架构,增强了系统的可维护性和拓展性。
- 播放器集成体验良好,用户可便捷观看赛事直播。
## 后续优化方向
- 接入用户评论与弹幕系统,提升用户互动性。
- 增加赛事订阅与提醒功能,优化用户体验。
- 提升异常处理与容错机制,增强系统健壮性。