--- title: CampusLoop Backend emoji: 🎓 colorFrom: blue colorTo: purple sdk: docker pinned: false license: mit app_port: 7860 startup_duration_timeout: 60s --- # CampusLoop Backend API 校园圈社交应用后端服务,提供用户管理、动态发布、论坛讨论、活动管理等功能。 ## 🚀 功能特性 - 🔐 **用户认证系统** - 注册、登录、JWT认证 - 📝 **动态发布** - 文字、图片动态发布与评论 - 💬 **论坛讨论** - 多话题论坛交流 - 🎉 **活动管理** - 校园活动发布与参与 - 📚 **课程表管理** - 个人课程安排 - 🔍 **失物招领** - 校园失物发布与寻找 - 📊 **成绩管理** - 学生成绩查询 - 🔔 **消息通知** - 实时消息推送 ## 📡 API 接口文档 ### 认证接口 - `POST /api/auth/register` - 用户注册 - `POST /api/auth/login` - 用户登录 - `GET /api/user/profile` - 获取用户信息 ### 动态接口 - `GET /api/posts` - 获取动态列表 - `POST /api/posts` - 发布动态 - `GET /api/posts/:id/comments` - 获取动态评论 - `POST /api/posts/:id/comments` - 添加评论 - `POST /api/posts/:id/like` - 点赞动态 ### 论坛接口 - `GET /api/forum/posts` - 获取论坛帖子 - `POST /api/forum/posts` - 创建论坛帖子 - `GET /api/forum/posts/:id` - 获取帖子详情 ### 活动接口 - `GET /api/activities` - 获取活动列表 - `POST /api/activities` - 创建活动 - `POST /api/activities/:id/join` - 参加活动 ### 课程表接口 - `GET /api/schedule` - 获取课程表 - `POST /api/schedule` - 添加课程 ### 失物招领接口 - `GET /api/lostfound` - 获取失物信息 - `POST /api/lostfound` - 发布失物信息 ### 成绩接口 - `GET /api/grades` - 获取成绩 - `POST /api/grades` - 添加成绩 ### 通知接口 - `GET /api/notifications` - 获取通知列表 - `POST /api/notifications/:id/read` - 标记通知已读 ## 🏥 健康检查 访问 `/api/health` 查看服务状态: ```json { "status": "ok", "timestamp": "2024-11-14T03:00:00.000Z", "service": "campusloop-backend" } ``` ## 🛠 技术栈 - **后端框架**: Node.js + Express.js - **数据库**: MySQL - **认证**: JWT (JSON Web Tokens) - **文件上传**: Multer - **日志系统**: Winston - **实时通信**: Socket.io - **安全**: Helmet + CORS - **容器化**: Docker ## 🔧 环境配置 应用需要以下环境变量: ```bash NODE_ENV=production PORT=7860 MYSQL_HOST=your_mysql_host MYSQL_PORT=your_mysql_port MYSQL_USER=your_mysql_user MYSQL_PASSWORD=your_mysql_password MYSQL_DATABASE=campus_circle JWT_SECRET=your_jwt_secret ``` ## 📝 使用说明 1. **健康检查**: `GET /api/health` 2. **用户注册**: `POST /api/auth/register` 3. **用户登录**: `POST /api/auth/login` 4. **获取动态**: `GET /api/posts` ## 🎯 部署信息 - **平台**: Hugging Face Spaces - **端口**: 7860 - **协议**: HTTPS - **域名**: 自动分配 `.hf.space` 域名 ## 📄 许可证 MIT License - 详见 LICENSE 文件 --- 由响指AI开发 🤖