项目技术规格说明书
项目技术规格说明书
0. 数据库ER图

其中,灰色部分为Alpha阶段暂不考虑内容,深红色属性为主码。
1. GET
| URL | 界面 |
|---|---|
| / | 首页 |
| /course | 课程查找界面 |
| /course/[course_id] | 课程界面 |
| /course/[course_id]/resource | 课程资源界面 |
| /contact | 联系我们 |
| /user/[username]/home | 个人中心首页 |
2. POST
2.1 课程选择相关
2.1.1 获取某学院课程列表
url: /course/college_course
前端提供:
| 名称 | 类型 | 备注 |
|---|---|---|
| college_id | int | 院系号 |
后端提供:
| 名称 | 类型 | 备注 |
|---|---|---|
| course_id_list | [course_id0, course_id1, course_id2, ...] course_id:int | 课程编号列表 |
2.1.2 通过某课程类别课程列表
url: /course/classification_course
前端提供:
| 名称 | 类型 | 备注 |
|---|---|---|
| course_kind | int | 课程类别号 |
后端提供:
| 名称 | 类型 | 备注 |
|---|---|---|
| course_id_list | [course_id0, course_id1, course_id2, ...] course_id:int | 课程编号列表 |
2.2 课程相关
2.2.1 查询课程详细信息
url: /course/information
前端提供:
| 名称 | 类型 | 备注 |
|---|---|---|
| course_id | int | 课程编号 |
后端提供:
| 名称 | 类型 | 备注 |
|---|---|---|
| name | str | 课程名称 |
| teacher | str | 授课教师名称 |
| college | str | 开课院系 |
| hours | int | 学时 |
| intro | str | 课程简介 |
| picture | str | 课程图片的url,前端加载时直接加载图片网址 |
| resources_num | int | 资源数量 |
| resources_id_list | list [resource_id0, resource_id1, resource_id2, ...] resource_id:int | 资源文件编号的列表 |
2.2.2 查询课程贡献度列表
url: /course/contribution
前端提供:
| 名称 | 类型 | 备注 |
|---|---|---|
| course_id | int | 课程编号 |
后端提供:
| 名称 | 类型 | 备注 |
|---|---|---|
| list[] | [username0, nameuser1, username2, ...] name:str | 一个该课程贡献度排名列表 |
2.3 资源相关
2.3.1 获取资源信息
url: /course/resource/information
前端提供:
| 名称 | 类型 | 备注 |
|---|---|---|
| resource_id | int | 资源编号 |
后端提供:
| 名称 | 类型 | 备注 |
|---|---|---|
| link | str | 资源文件路径 |
| upload_time | str | 上传时间 |
| upload_username | int | 上传者 |
| download_username_list | list [username0, username1, username2, ...] username:str | 下载用户名列表 |
| like_username_list | list [username0, username1, username2, ...] username:str | 喜欢用户名列表 |
| eva_pos_username_list | list [username0, username1, username2, ...] username:str | 好评用户名列表 |
| eva_neg_username_list | list [username0, username1, username2, ...] username:str | 差评用户名列表 |
3.3.2 好评/差评
url: course/resource/evaluate
前端提供:
| 名称 | 类型 | 备注 |
|---|---|---|
| resource_id | int | 资源编号 |
| username | str | 用户名 |
| evaluation | int | 0好评,1差评 |
后端提供:
| 名称 | 类型 | 备注 |
|---|---|---|
| error | int | 0表成功,其余表示失败 |
2.4 登录/注册相关
2.4.1 判断用户登录状态
url: /sign/get_user
前端提供:
| 名称 | 类型 | 备注 |
|---|---|---|
| this | * | #可以是当前IP,也可以是其他能够标识用户主机的码 |
后端提供:
| 名称 | 类型 | 备注 |
|---|---|---|
| is_login | bool | true表已经登录,false表没有登录 |
2.4.2 注册
url: /sign/register
前端提供:
| 名称 | 类型 | 备注 |
|---|---|---|
| username | str | 唯一的用户名 |
| nickname | str | 姓名(默认为用户名) |
| str | 合法的北航邮箱 | |
| password | str | 密码长度为8-20位,包含数字、大小写字母、半角符号 |
| gender | int | 0为保密,1为男,2为女 |
后端提供:
| 名称 | 类型 | 备注 |
|---|---|---|
| error | int | 0表成功,其余表示失败 |
2.4.3 登录
url: /sign/login
前端提供:
| 名称 | 类型 | 备注 |
|---|---|---|
| username | str | 用户名 |
| password | str | 密码 |
后端提供:
| 名称 | 类型 | 备注 |
|---|---|---|
| error | int | 0表成功,其余表示失败 |
2.5 用户相关
2.5.1 获取个人信息
url: /user/information
前端提供:
| 名称 | 类型 | 备注 |
|---|---|---|
| username | str | 用户名 |
后端提供:
| 名称 | 类型 | 备注 |
|---|---|---|
| str | 邮箱(北航) | |
| gender | int | 性别(私密0,男1,女2) |
| intro | str | 个人介绍 |

浙公网安备 33010602011771号