FastAPI(六十三)實戰開發《在線課程學習系統》梳理系統需要接口 FastAPI(六十二)實戰開發《在線課程學習系統》需求分析

  針對上一篇FastAPI(六十二)實戰開發《在線課程學習系統》需求分析需求的功能,我們對需要的接口進行梳理,大概的規劃出來現有的接口,作爲我們第一版的接口的設計出版,然後我們根據設計的接口。

  

2.1用戶註冊接口

路徑:/user/register

請求方式:POST

請求格式:json

是否依賴登陸:否

參數:

參數名稱參數含義參數是否必須參數類型
username 用戶名 8-16位 str
password 密碼,長度8-16位,md5加密 str
role 類型,學生或者老師,默認:學生 str
jobnum 工號,8位數字 int
studentnum 學籍號,16位數字 int
sex 性別,男女。 str
age 年齡,必須大於18,小於65 int

 

接口返回:json

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

返回碼說明

代碼含義
200 註冊成功
100101 註冊失敗
100102 身份和對應號不匹配
100103 年紀大小不符合
100104 用戶名重複
100105 密碼加密失敗
100106 用戶名長度不符合

 

2.2登陸接口

路徑:/user/login

請求方式:post

請求格式:json

是否依賴登陸:否

請求參數

字段含義是否必須類型
username 用戶名 str
password 密碼 str

返回例子

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

返回狀態碼說明

 

代碼含義
200 成功
100201 登陸失敗
100202 重複登陸
100203 產生token失敗
100204 輸入密碼錯誤次數過多,賬號暫時鎖定,請30min再來登錄
100205 用戶不存在
100206 密碼錯誤

 

2.3個人信息

路徑:/user/info

請求方式:post

請求格式:json

請求參數:無

是否依賴登陸:是

返回格式:json

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

返回狀態碼說明

代碼含義
200 成功
2.4 修改密碼

路徑:/user/changepassword

請求方式:post

請求格式:json

返回格式:json

是否依賴登陸:是

參數說明是否必須類型
oldpassword 原密碼 str
newspassword 新密碼 str

返回示例

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

返回狀態碼說明

狀態碼含義
200 成功
100301 原密碼校驗失敗
100302 密碼保存失敗
100303 新密碼長度不匹配
100304 新舊密碼不能一樣
2.5 留言

路徑:/user/addmessage

請求方式:post

請求格式:json

是否依賴登陸:是

請求參數:

參數含義是否必須類型
id 用戶id int
message 內容 str

返回格式:json

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

返回狀態碼說明

狀態碼含義
200 成功
100501 自己不能給自己留言
100502 留言長度在5-500個字符長度
100503 留言用戶不存在

 

2.6 查看留言

路徑:/user/viewmessage

請求方式:get

請求格式:json

是否依賴登陸:是

請求參數:無

返回格式:json

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

返回狀態碼說明

狀態碼含義
200 成功
2.7留言列表

路徑:/user/messagelist

請求方式:get

請求格式:json

是否依賴登陸:是

請求參數:無

返回格式:json

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

返回狀態碼說明

狀態碼含義
200 成功
2.8回覆留言

路徑:/user/rebackmessage/

請求方式:post

請求格式:json

是否依賴登陸:是

請求參數

參數含義是否必須類型
id 留言的id int
message 內容 str

返回格式:json

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

返回狀態碼說明

狀態碼含義
200 成功
100801 回覆留言失敗
100802 回覆留言內容不能爲空
100803 回覆內容應該在5-500字
100804 回覆留言id不存在
2.9刪除留言

路徑:/user/deletemessage/{id}

請求方式:get

請求格式:json

是否依賴登陸:是

請求參數:

參數含義是否必須類型
id 留言的id int

返回格式:json

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

返回狀態碼說明

狀態碼含義
200 成功
100901 刪除留言不存在
100902 權限不足
2.10創建課程

路徑:/course/create

請求方式:post

請求格式:json

是否依賴登陸:是

請求參數:

參數含義是否必須類型
name 課程名稱(長度2-50) str
icon 課程的icon str
desc 描述 text
catalog 目錄 json
onshelf 是否上架(0上架,1下架) int

返回格式:json

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

狀態碼說明

狀態碼含義
200 成功
101002 課程名稱不能重複
101003 課程創建失敗
2.11課程詳情

路徑:/course/detail/{id}

請求方式:get

請求格式:json

是否依賴登陸:是

請求參數

參數含義是否必須類型
id 課程id int

返回格式:json

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

狀態碼說明

狀態碼含義
200 成功
101101 課程不存在
2.12 課程編輯

路徑:/course/edit

請求方式:put

請求格式:json

是否依賴登陸:是

請求參數

參數含義是否必須類型
name 課程名稱(長度2-50) str
id 課程id int
icon 課程icon str
desc 課程描述 str
catalog 課程目錄 json
onshelf 是否上架(0上架,1下架) int

返回格式:json

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

狀態碼說明

狀態碼含義
200 成功
101201 課程id不存在
101202 權限不足
101203 課程名稱不能重複
2.13 查看評論

路徑:/course/viewcomments/{id}

請求方式:get

請求格式:無

是否依賴登陸:是

請求參數

參數含義是否必須類型
id 課程id int

返回格式:json

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

狀態碼說明

狀態碼含義
200 成功
101301 課程id不存在
2.14評論

路徑:/course/comments

請求方式:post

請求格式:json

是否依賴登陸:是

請求參數

參數含義是否必須類型
id 課程id int
content 評論內容 str

返回格式:json

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

狀態碼說明

狀態碼含義
200 成功
101401 課程id不存在
101402 評論內容不能爲空
101403 評論失敗
101404 自己不能評論自己的課程
2.15 加入課程

路徑:/course/add/{id}

請求方式:post

請求格式:json

是否依賴登陸:是

請求參數

參數含義是否必須類型
id 課程id int

返回格式:json

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

狀態碼說明

狀態碼含義
200 成功
101501 課程id不存在
101502 課程不能重複加入
101503 自己不能加入自己的課程
2.16 退出課程

路徑:/course/quit/{id}

請求方式:post

請求格式:json

是否依賴登陸:是

請求參數

參數含義是否必須類型
id 課程id int

返回格式:json

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

狀態碼說明

狀態碼含義
200 成功
101601 課程id不存在
101602 課程不在自己列表
2.17 課程列表

路徑:/course/list

請求方式:get

請求格式:json

是否依賴登陸:是

請求參數:無

返回格式:json

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

狀態碼說明

狀態碼含義
200 成功
2.18 課程列表(當前用戶的課程)

路徑:/course/courselist

請求方式:get

請求格式:json

是否依賴登陸:是

請求參數:

返回格式:json

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

狀態碼說明

狀態碼含義
200 成功
2.19 推薦課程列表

路徑:/course/recommend

請求方式:get

請求格式:json

是否依賴登陸:是

請求參數:無

返回格式:json

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

狀態碼說明

狀態碼含義
200 成功
2.20 課程點贊

路徑:/course/like/{id}

請求方式:get

請求格式:json

是否依賴登陸:是

請求參數

參數含義是否必須類型
id 課程id int

返回格式:json

{
 "code":200,
 "data":"ok",
 "message":"成功"
}
2.21 課程上架

路徑:/course/onshelf/{id}

請求方式:get

請求格式:json

是否依賴登陸:是

請求參數

參數含義是否必須類型
id 課程id int

返回格式:json

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

狀態碼說明

狀態碼含義
200 成功
102101 課程不存在
102102 課程已經上架
102103 自己只能上架自己的課程
102104 權限不足
2.22 課程下架

路徑:/course/offshelf/{id}

請求方式:get

請求格式:json

是否依賴登陸:是

請求參數

參數含義是否必須類型
id 課程id int

返回格式:json

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

狀態碼說明

狀態碼含義
200 成功
102201 課程不存在
102202 課程已經下架
102203 自己只能下架自己的課程
102204 權限不足

        對應的接口第一版本已經梳理完畢,下次,我們分享需要的數據庫的設計。

後記

 

文章首發在公衆號,歡迎關注。

 

 

        

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章