FastAPI(六十三)实战开发《在线课程学习系统》梳理系统需要接口 (上)

前言

针对上一篇需求分析,我们需要对接口进行梳理,大概得规划出现有的接口,作为我们第一版的接口的设计初版。

用户

用户注册接口

路径:/user/register

请求方式:POST

参数格式:json

是否依赖登录:否

参数:

|-------------|------------------|--------|------|
| 参数名称 | 参数含义 | 参数是否必须 | 参数类型 |
| username | 用户名,长度8-16位 | 是 | str |
| password | 密码,长度8-16位,md5加密 | 是 | str |
| role | 角色,学生或老师,默认:学生 | 是 | str |
| job_num | 工号,8位数字 | 否 | int |
| student_num | 学籍号,16位数字 | 否 | int |
| sex | 性别,男或女 | 是 | str |
| age | 年龄,必须大于18小于65 | 是 | int |

接口返回:json

{"code": 200, "data": "成功", "message": "成功"}

返回码说明

代码 含义
200 注册成功
100101 注册失败
100102 身份和对应号不匹配
100103 年纪大小不符合
100104 用户名重复
100105 密码加密失败
100106 用户名长度不符合

登录接口

路径:/user/login

请求方式:post

请求格式:json

是否依赖登陆:否

请求参数

字段 含义 是否必须 类型
username 用户名 是 str
password 密码 是 str

返回例子

复制代码
{ "code":200, "data":{ "token":"" }, "message":"成功" }

返回状态码说明

代码 含义
200 成功
100201 登陆失败
100202 重复登陆
100203 产生token失败
100204 输入密码错误次数过多,账号暂时锁定,请30min再来登录
100205 用户不存在
100206 密码错误

个人信息

路径:/user/info

请求方式:post

请求格式:json

请求参数:无

是否依赖登陆:是

返回格式:json

复制代码
{ "code":200, "data":{   }, "message":"成功"}

返回状态码说明

代码 含义
200 成功

修改密码

路径:/user/changepassword

请求方式:post

请求格式:json

返回格式:json

是否依赖登陆:是

参数 说明 是否必须 类型
oldpassword 原密码 是 str
newspassword 新密码 是 str

返回示例

复制代码
{ "code":200, "data":'成功', "message":"成功"}

返回状态码说明

状态码 含义
200 成功
100301 原密码校验失败
100302 密码保存失败
100303 新密码长度不匹配
100304 新旧密码不能一样

留言

路径:/user/addmessage

请求方式:post

请求格式:json

是否依赖登陆:是

请求参数:

参数 含义 是否必须 类型
id 用户id 是 int
message 内容 是 str

返回格式:json

{ "code":200, "data":{ }, "message":"成功"}

返回状态码说明

状态码 含义
200 成功
100501 自己不能给自己留言
100502 留言长度在5-500个字符长度
100503 留言用户不存在

查看留言

路径:/user/viewmessage

请求方式:get

请求格式:json

是否依赖登陆:是

请求参数:无

返回格式:json

复制代码
{
 "code":200,
 "data":{
   
},
 "message":"成功"
}

返回状态码说明

状态码 含义
200 成功
相关推荐
卡提西亚8 小时前
FastAPI基础入门
python·fastapi
Paper-Tiger13 小时前
手搓 FastAPI + Redis + 流式 RAG 实录
fastapi
像风一样自由202014 小时前
2.如何用FastAPI把一个Python算法封装成HTTP服务
python·算法·fastapi
狗凯之家源码网17 小时前
iOS C2 V2 与 Python FastAPI 全链路远控系统深度评测
python·ios·fastapi
触底反弹1 天前
🚀 FastAPI 五大重难点深度剖析:从 500 报错到彻底搞懂 Depends、Pydantic 与 SQLAlchemy
python·fastapi
奔跑的熊猫2 天前
VSCode + FastAPI +AI Agent+langchain第一个程序
langchain·fastapi
全栈陈序员2 天前
【Python】基础语法入门(三十一)—— API 开发:用 FastAPI 构建 RESTful 接口
python·restful·fastapi
一枕槐安4872 天前
应届生 RAG 项目包装:FastAPI 检索服务接口设计指南
fastapi·web服务·rag·pydantic·接口封装
又蓝4 天前
【元宝搜索开发者征文大赛】用 FastAPI + Vue3 做了个 AI 炒股工具,接了六个分析师和腾讯元宝搜索
人工智能·python·ai·fastapi
外收内放4 天前
FastAPI猜字谜实战(8):收官
开发语言·python·学习·fastapi