# 云课堂服务端 **Repository Path**: wang-yin1/cloud-classroom-server ## Basic Information - **Project Name**: 云课堂服务端 - **Description**: Node.js 服务端 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-07-01 - **Last Updated**: 2025-07-03 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 项目 README ## 项目介绍 这是一个基于 Node.js 的多功能后端服务项目,使用 Express 框架构建,集成了视频播放、弹幕、支付、用户管理、文件上传下载、WebSocket 通信、JWT 认证、Redis 缓存、RabbitMQ 消息队列等特性。项目适用于在线教育、视频播放和商城类应用场景。 ## 技术栈 - Node.js + Express - Sequelize ORM + MySQL - Redis 缓存 - RabbitMQ 消息队列 - JWT 认证 - WebSocket 实时通信 - 阿里云 OSS、微信支付、华为云点播 - 使用了 dayjs、multer、svg-captcha、geoip 等工具库 ## 核心功能 - 用户登录注册与权限管理 - 视频上传、播放、点播 URL 获取 - 弹幕功能与实时通信支持 - 支付功能(微信支付、订单处理) - 文件与图片上传下载管理 - 消息通知与验证码发送 - 搜索与排行榜功能 ## 安装与部署 ### 环境要求 - Node.js >= 14.x - npm 或 yarn - MySQL 数据库 - Redis - RabbitMQ ### 安装步骤 1. 下载项目代码 2. 安装依赖: ```bash npm install ``` 3. 配置数据库、Redis、RabbitMQ、微信支付、阿里云 OSS 等信息 4. 启动项目: ```bash node app.js ``` ## 使用说明 - 项目启动后,默认监听 `3000` 端口 - WebSocket 服务集成在 Express 服务中 - 使用 JWT 进行用户认证,密钥配置在 `config/jwtSecretKey.js` - 图片上传使用 `multer`,配置在 `config/multerConfig.js` - 支付功能通过 `config/wechatPay.js` 配置微信支付参数 - 视频播放支持华为云 VOD,配置在 `config/huaweiCloud.js` ## 目录结构说明 - `controller/` - 控制器文件,处理 HTTP 请求 - `router/` - 路由配置 - `models/` - Sequelize 数据模型 - `service/` - 业务逻辑处理 - `config/` - 配置文件(JWT、OSS、RabbitMQ、Redis、微信等) - `utils/` - 工具类库(加密、验证码、文件处理、定时任务等) ## 贡献指南 欢迎提交 Pull Request。请遵循以下规范: - 保持代码风格统一 - 提交前进行测试 - 添加必要的注释和文档 ## 开源许可 本项目遵循 MIT 开源协议。详见项目根目录下的 `LICENSE` 文件。