前端對于接口規范要求
1.同一APP中,圖片路徑統一(要么都是全路徑,要么都是半路徑)
2.接口返回的msg信息明確(給出具體的提示語,我們需要彈出提示語),不要傳空字符串,或者其他代碼形式信息
3.接口必須有code msg data 不允許出現NULL,接口返回數據data中,結構固定(不能同一個接口data返回的類型這次數組下次空的就返回字符串)
4.APP在開發過程中,接口端能提供同一的code碼,并標注對應的意思,不允許出現以下情況(例如:token失效后要請求成功 code給一個固定的數值如401 不能請求500,請求成功的code統一返回 1,失敗返回 0)
5.接口文檔中應標注好入參注釋,返回參數注釋及返回數據結構
6.時間戳根據UI頁面呈現的結構進行格式化,返回展示
7.Json數據中的鍵,不要出現關鍵字,數字,漢字等內容
8.同一個應用中分頁數據的結構應統一?
例如:?不同開發人員輸入的字段名應統一: 如total_page代表總頁數...具體名稱有后端人員定義,但要統一!!!!
{
msg: '',
code: '',
data: {
total_page: '',
current_page: '',
size: '',
list: [],
...
}
}
列表類
一級有數據
{
?"code": 1,... <number>
?"msg": "操作成功",... <string>
"data": [...<array>
? -
{
? "id": 6,... <number>
? "title": "新冠是如何產生和快速傳播的!!",... <string>
? "create_time": "2020-06-11 15:46",... <string>
? "play_num": 22,... <number>
? "cover_image": "/uploads/20200611/e853d13060b61d65c2e599c029deb735.jpg",... <string>
? "is_free": 1,... <number>
? "video_url": "/uploads/20200611/9ec8eb9a131f15baeb9ac4b1dbd1c0f9.mp4"... <string>
?}
?],
?"time": "2020-07-27 17:03:48"... <string>
}
一級無數據
{
?"code": 1,... <number>
?"msg": "操作成功",... <string>
"data": […<array>
?],
?"time": "2020-07-27 17:03:48"... <string>
}
二級有數據 (例如通訊錄)
{
?"code": 1,... <number>
?"msg": "操作成功",... <string>
"data": […<array>
?{
?“key”: "title": "L",... <string>
?"list": […<array>
?{
? "id": 6,... <number>
? "title": "李帥帥",... <string>
?}
?]
?}
?{
?“key”: "title": "W",... <string>
?"list": […<array>
?{
? "id": 6,... <number>
? "title": "王富貴",... <string>
?}
?]
?}
?],
?"time": "2020-07-27 17:03:48"... <string>
}
單個對象類. (有數據)
{
?"code": 1,... <number>
?"msg": "操作成功",... <string>
"data": {…<object>
?"top_status": "2",置頂審核:0=未申請,1=申請中,2=已同意 <string>
?"type": "video",文章類型:video=視頻,images=圖片,article=引用文章,default=圖文消息 <string>
?"create_time": "09:00",創建時間 <string>
?"user": {...<object>
? "nickname": "后端啊啊測試",昵稱 <string>
? "avatar": "/uploads/20200308/043c24b339da7b239dfc78b8967d309c.png",頭像 <string>
? "gender": 11 男 2女 <string>
? },
?},
?"time": "2020-07-27 17:03:48"... <string>
}
單個對象類. (無數據) code = 0
{
?"code": 0,… <number>
?"msg": "操作成功",... <string>
"data": {…<object>
?},
?"time": "2020-07-27 17:03:48"... <string>
}
例如個人信息 (有數據)
{
?"code": 1,... <number>
?"msg": "操作成功",... <string>
"data": {...<object>
?"nickname": "測試433",昵稱 <string>
?"avatar": "https://xinli.xizangtiansheng.com/uploads/20200515/6a607d64fde20ba39d9bbd07572ddcfa.jpg",頭像 <string>
?"level": […<array>
?{
? "id": 6,... <number>
?"title": "王富貴",... <string>
?}
?]
?"com_duration": "1:38:00"通話時長沒有為空 <string>
?},
?"time": "2020-06-06 15:10:25"... <string>
}
例如個人信息 (個別沒有數據數據) 返回返回格式一樣 如 level nickname
{
?"code": 1,... <number>
?"msg": "操作成功",... <string>
"data": {...<object>
?"nickname": "",昵稱 <string>
?"avatar": "https://xinli.xizangtiansheng.com/uploads/20200515/6a607d64fde20ba39d9bbd07572ddcfa.jpg",頭像 <string>
?"level": […<array>
?]
?"com_duration": "1:38:00"通話時長沒有為空 <string>
?},
?"time": "2020-06-06 15:10:25"... <string>
}