針對上一篇FastAPI(六十二)實(shí)戰(zhàn)開發(fā)《在線課程學(xué)習(xí)系統(tǒng)》需求分析需求的功能,我們對需要的接口進(jìn)行梳理,大概的規(guī)劃出來現(xiàn)有的接口,作為我們第一版的接口的設(shè)計出版,然后我們根據(jù)設(shè)計的接口。
創(chuàng)新互聯(lián)建站堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都做網(wǎng)站、網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時代的桓仁網(wǎng)站設(shè)計、移動媒體設(shè)計的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
路徑:/user/register
請求方式:POST
請求格式:json
是否依賴登陸:否
參數(shù):
參數(shù)名稱 | 參數(shù)含義 | 參數(shù)是否必須 | 參數(shù)類型 |
---|---|---|---|
username | 用戶名 8-16位 | 是 | str |
password | 密碼,長度8-16位,md5加密 | 是 | str |
role | 類型,學(xué)生或者老師,默認(rèn):學(xué)生 | 是 | str |
jobnum | 工號,8位數(shù)字 | 否 | int |
studentnum | 學(xué)籍號,16位數(shù)字 | 否 | int |
sex | 性別,男女。 | 是 | str |
age | 年齡,必須大于18,小于65 | 是 | int |
接口返回:json
{
"code":200,
"data":'成功',
"message":"成功"
}
返回碼說明
代碼 | 含義 |
---|---|
200 | 注冊成功 |
注冊失敗 | |
身份和對應(yīng)號不匹配 | |
年紀(jì)大小不符合 | |
用戶名重復(fù) | |
密碼加密失敗 | |
用戶名長度不符合 |
路徑:/user/login
請求方式:post
請求格式:json
是否依賴登陸:否
請求參數(shù)
字段 | 含義 | 是否必須 | 類型 |
---|---|---|---|
username | 用戶名 | 是 | str |
password | 密碼 | 是 | str |
返回例子
{
"code":200,
"data":{
"token":""
},
"message":"成功"
}
返回狀態(tài)碼說明
代碼 | 含義 |
---|---|
200 | 成功 |
登陸失敗 | |
重復(fù)登陸 | |
產(chǎn)生token失敗 | |
輸入密碼錯誤次數(shù)過多,賬號暫時鎖定,請30min再來登錄 | |
用戶不存在 | |
密碼錯誤 |
路徑:/user/info
請求方式:post
請求格式:json
請求參數(shù):無
是否依賴登陸:是
返回格式:json
{
"code":200,
"data":{
},
"message":"成功"
}
返回狀態(tài)碼說明
代碼 | 含義 |
---|---|
200 | 成功 |
路徑:/user/changepassword
請求方式:post
請求格式:json
返回格式:json
是否依賴登陸:是
參數(shù) | 說明 | 是否必須 | 類型 |
---|---|---|---|
oldpassword | 原密碼 | 是 | str |
newspassword | 新密碼 | 是 | str |
返回示例
{
"code":200,
"data":'成功',
"message":"成功"
}
返回狀態(tài)碼說明
狀態(tài)碼 | 含義 |
---|---|
200 | 成功 |
原密碼校驗(yàn)失敗 | |
密碼保存失敗 | |
新密碼長度不匹配 | |
新舊密碼不能一樣 |
路徑:/user/addmessage
請求方式:post
請求格式:json
是否依賴登陸:是
請求參數(shù):
參數(shù) | 含義 | 是否必須 | 類型 |
---|---|---|---|
id | 用戶id | 是 | int |
message | 內(nèi)容 | 是 | str |
返回格式:json
{
"code":200,
"data":{
},
"message":"成功"
}
返回狀態(tài)碼說明
狀態(tài)碼 | 含義 |
---|---|
200 | 成功 |
自己不能給自己留言 | |
留言長度在5-500個字符長度 | |
留言用戶不存在 |
路徑:/user/viewmessage
請求方式:get
請求格式:json
是否依賴登陸:是
請求參數(shù):無
返回格式:json
{
"code":200,
"data":{
},
"message":"成功"
}
返回狀態(tài)碼說明
狀態(tài)碼 | 含義 |
---|---|
200 | 成功 |
路徑:/user/messagelist
請求方式:get
請求格式:json
是否依賴登陸:是
請求參數(shù):無
返回格式:json
{
"code":200,
"data":[
],
"message":"成功"
}
返回狀態(tài)碼說明
狀態(tài)碼 | 含義 |
---|---|
200 | 成功 |
路徑:/user/rebackmessage/
請求方式:post
請求格式:json
是否依賴登陸:是
請求參數(shù)
參數(shù) | 含義 | 是否必須 | 類型 |
---|---|---|---|
id | 留言的id | 是 | int |
message | 內(nèi)容 | 是 | str |
返回格式:json
{
"code":200,
"data":{},
"message":"成功"
}
返回狀態(tài)碼說明
狀態(tài)碼 | 含義 |
---|---|
200 | 成功 |
回復(fù)留言失敗 | |
回復(fù)留言內(nèi)容不能為空 | |
回復(fù)內(nèi)容應(yīng)該在5-500字 | |
回復(fù)留言id不存在 |
路徑:/user/deletemessage/{id}
請求方式:get
請求格式:json
是否依賴登陸:是
請求參數(shù):
參數(shù) | 含義 | 是否必須 | 類型 |
---|---|---|---|
id | 留言的id | 是 | int |
返回格式:json
{
"code":200,
"data":"ok",
"message":"成功"
}
返回狀態(tài)碼說明
狀態(tài)碼 | 含義 |
---|---|
200 | 成功 |
刪除留言不存在 | |
權(quán)限不足 |
路徑:/course/create
請求方式:post
請求格式:json
是否依賴登陸:是
請求參數(shù):
參數(shù) | 含義 | 是否必須 | 類型 |
---|---|---|---|
name | 課程名稱(長度2-50) | 是 | str |
icon | 課程的icon | 否 | str |
desc | 描述 | 否 | text |
catalog | 目錄 | 否 | json |
onshelf | 是否上架(0上架,1下架) | 是 | int |
返回格式:json
{
"code":200,
"data":"ok",
"message":"成功"
}
狀態(tài)碼說明
狀態(tài)碼 | 含義 |
---|---|
200 | 成功 |
課程名稱不能重復(fù) | |
課程創(chuàng)建失敗 |
路徑:/course/detail/{id}
請求方式:get
請求格式:json
是否依賴登陸:是
請求參數(shù)
參數(shù) | 含義 | 是否必須 | 類型 |
---|---|---|---|
id | 課程id | 是 | int |
返回格式:json
{
"code":200,
"data":"ok",
"message":"成功"
}
狀態(tài)碼說明
狀態(tài)碼 | 含義 |
---|---|
200 | 成功 |
課程不存在 |
路徑:/course/edit
請求方式:put
請求格式:json
是否依賴登陸:是
請求參數(shù)
參數(shù) | 含義 | 是否必須 | 類型 |
---|---|---|---|
name | 課程名稱(長度2-50) | 是 | str |
id | 課程id | 是 | int |
icon | 課程icon | 否 | str |
desc | 課程描述 | 否 | str |
catalog | 課程目錄 | 否 | json |
onshelf | 是否上架(0上架,1下架) | 是 | int |
返回格式:json
{
"code":200,
"data":"ok",
"message":"成功"
}
狀態(tài)碼說明
狀態(tài)碼 | 含義 |
---|---|
200 | 成功 |
課程id不存在 | |
權(quán)限不足 | |
課程名稱不能重復(fù) |
路徑:/course/viewcomments/{id}
請求方式:get
請求格式:無
是否依賴登陸:是
請求參數(shù)
參數(shù) | 含義 | 是否必須 | 類型 |
---|---|---|---|
id | 課程id | 是 | int |
返回格式:json
{
"code":200,
"data":"ok",
"message":"成功"
}
狀態(tài)碼說明
狀態(tài)碼 | 含義 |
---|---|
200 | 成功 |
課程id不存在 |
路徑:/course/comments
請求方式:post
請求格式:json
是否依賴登陸:是
請求參數(shù)
參數(shù) | 含義 | 是否必須 | 類型 |
---|---|---|---|
id | 課程id | 是 | int |
content | 評論內(nèi)容 | 是 | str |
返回格式:json
{
"code":200,
"data":"ok",
"message":"成功"
}
狀態(tài)碼說明
狀態(tài)碼 | 含義 |
---|---|
200 | 成功 |
課程id不存在 | |
評論內(nèi)容不能為空 | |
評論失敗 | |
自己不能評論自己的課程 |
路徑:/course/add/{id}
請求方式:post
請求格式:json
是否依賴登陸:是
請求參數(shù)
參數(shù) | 含義 | 是否必須 | 類型 |
---|---|---|---|
id | 課程id | 是 | int |
返回格式:json
{
"code":200,
"data":"ok",
"message":"成功"
}
狀態(tài)碼說明
狀態(tài)碼 | 含義 |
---|---|
200 | 成功 |
課程id不存在 | |
課程不能重復(fù)加入 | |
自己不能加入自己的課程 |
路徑:/course/quit/{id}
請求方式:post
請求格式:json
是否依賴登陸:是
請求參數(shù)
參數(shù) | 含義 | 是否必須 | 類型 |
---|---|---|---|
id | 課程id | 是 | int |
返回格式:json
{
"code":200,
"data":"ok",
"message":"成功"
}
狀態(tài)碼說明
狀態(tài)碼 | 含義 |
---|---|
200 | 成功 |
課程id不存在 | |
課程不在自己列表 |
路徑:/course/list
請求方式:get
請求格式:json
是否依賴登陸:是
請求參數(shù):無
返回格式:json
{
"code":200,
"data":"ok",
"message":"成功"
}
狀態(tài)碼說明
狀態(tài)碼 | 含義 |
---|---|
200 | 成功 |
路徑:/course/courselist
請求方式:get
請求格式:json
是否依賴登陸:是
請求參數(shù):
無
返回格式:json
{
"code":200,
"data":"ok",
"message":"成功"
}
狀態(tài)碼說明
狀態(tài)碼 | 含義 |
---|---|
200 | 成功 |
路徑:/course/recommend
請求方式:get
請求格式:json
是否依賴登陸:是
請求參數(shù):無
返回格式:json
{
"code":200,
"data":"ok",
"message":"成功"
}
狀態(tài)碼說明
狀態(tài)碼 | 含義 |
---|---|
200 | 成功 |
路徑:/course/like/{id}
請求方式:get
請求格式:json
是否依賴登陸:是
請求參數(shù)
參數(shù) | 含義 | 是否必須 | 類型 |
---|---|---|---|
id | 課程id | 是 | int |
返回格式:json
{
"code":200,
"data":"ok",
"message":"成功"
}
路徑:/course/onshelf/{id}
請求方式:get
請求格式:json
是否依賴登陸:是
請求參數(shù)
參數(shù) | 含義 | 是否必須 | 類型 |
---|---|---|---|
id | 課程id | 是 | int |
返回格式:json
{
"code":200,
"data":"ok",
"message":"成功"
}
狀態(tài)碼說明
狀態(tài)碼 | 含義 |
---|---|
200 | 成功 |
課程不存在 | |
課程已經(jīng)上架 | |
自己只能上架自己的課程 | |
權(quán)限不足 |
路徑:/course/offshelf/{id}
請求方式:get
請求格式:json
是否依賴登陸:是
請求參數(shù)
參數(shù) | 含義 | 是否必須 | 類型 |
---|---|---|---|
id | 課程id | 是 | int |
返回格式:json
{
"code":200,
"data":"ok",
"message":"成功"
}
狀態(tài)碼說明
狀態(tài)碼 | 含義 |
---|---|
200 | 成功 |
課程不存在 | |
課程已經(jīng)下架 | |
自己只能下架自己的課程 | |
權(quán)限不足 |
對應(yīng)的接口第一版本已經(jīng)梳理完畢,下次,我們分享需要的數(shù)據(jù)庫的設(shè)計。
后記
文章首發(fā)在公眾號,歡迎關(guān)注。