用户进行登录,创建房间和加入房间,每个房间有一个房主,房主可以控制影片的播放,暂停,切换影片资源,同步观影人员的进度,
技术描述
1.使用 Redis 将创建的房间信息进行存储,房主定时刷新 Redis 中的信息
2. 使用 websocket 技术将房主的观影状态,影片资源,等信息,同步到加入此房间的用户端
3. 前端使用vue开发,后端使用 Spring Boot框架,利用 jwt为对用户登陆状态验证。
4. 使用 aop+自定义注解进行记录日志
5. 通过使用 Docker 容器进行部署项目,nginx 进行反向代理解决前端 vue 访问后端的跨域问题
项目问题:
1.登录生成的jwt 在内存中无法重新设置失效时间,将jwt存储在redis中设置时间,使用js 定时器在内存中的jwt失效之前重新生成
2. WebSocket建立连接后,一段时间会自动断开连接,当建立连接成功后,加入心跳,每过一段时间向后端发送信息,完成一次心跳;如果已经关闭,重新建立连接
3. 用户在登录后每次访问后端需要携带token,后端使用拦截器进行统一的判断