File size: 3,016 Bytes
d25b3ea
d9e5dfd
 
 
 
d25b3ea
 
 
d9e5dfd
 
d25b3ea
 
d9e5dfd
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
---
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开发 🤖