秒殺系統API接口設計說明書
1 前言
1.1 編寫目的
該項目採用前後端分離的技術,編寫該系統說明書是爲了更好的明確該系統功能和進行規範化開發,同時爲前後端整合、後期項目驗收做重要的參考文檔。
1.2 背景
該API接口設計說明書描述的是秒殺系統。
2 綜述
2.1 統一輸出參數
表2-1 Response參數信息
參數名 |
類型 |
是否必須 |
描述 |
code |
int |
是 |
狀態碼 |
msg |
String |
是 |
返回提示 |
data |
T |
否 |
返回信息 |
注:T爲泛型表示任意類型
2.2 必須登錄才能訪問的接口
表2-2登錄才能訪問接口
接口名稱 |
描述 |
/miaosha/do_miaosha |
秒殺功能 |
2.3 錯誤返回碼列表
表2-3 錯誤返回碼列表
code |
msg |
500100 |
服務端異常 |
500101 |
參數校驗異常:%s |
500210 |
Session不存在或已經失效 |
500211 |
登錄密碼不能爲空 |
500212 |
手機號不能爲空 |
500213 |
手機號格式錯誤 |
500214 |
手機號不存在 |
500215 |
密碼錯誤 |
500216 |
驗證碼爲空 |
500217 |
驗證碼錯誤 |
500500 |
商品已經秒殺完畢 |
500501 |
不能重複秒殺 |
注:%s後端將自動填充,前端接收到的爲完整字符串如:“參數校驗異常:手機號碼格式有誤”
3 用戶接口
3.1用戶登錄
接口:/login/do_login
描述:用戶登錄
校驗:session
方法:get/post
表3-1 用戶登錄Request參數
參數名 |
類型 |
是否必須 |
描述 |
mobile |
String |
是 |
手機號 |
password |
String |
是 |
密碼 |
verifyInput |
String |
否 |
驗證碼 |
ifyzm |
int |
否 |
是否需要驗證碼 |
注:當ifyzm爲0時需要填寫驗證碼,噹噹ifyzm爲1時不需要填寫驗證碼
表3-2 用戶登錄Response參數
參數名 |
類型 |
是否必須 |
描述 |
code |
int |
是 |
狀態碼 |
msg |
String |
是 |
返回提示 |
data |
boolean |
是 |
是否登錄成功 |
登錄成功後將返回token記錄到cookie
4 商品接口
4.1 商品列表接口
接口:/goods/ to_list
描述:商品列表
校驗:session
方法:get/post
Requst不需要傳入參數,返回商品列表信息,通過Model 進行數據傳遞goodsList
表4-1 商品列表Response參數
參數名 |
類型 |
是否必須 |
描述 |
goodsList |
List<GoodsVo> |
是 |
商品列表信息 |
goods. goodsName |
String |
是 |
商品名字 |
goods. goodsImg |
String |
是 |
商品照片 |
goods. goodsPrice |
Double |
是 |
商品價格 |
goods. miaoshaPrice |
Double |
是 |
秒殺價格 |
goods. stockCount |
Integer |
是 |
庫存 |
goods. id |
Long |
是 |
商品id |
4.2 商品詳情接口
接口:/goods/to_detail/{goodsId}
描述:商品詳情
校驗:session
方法:get/post
表4-2 商品詳情Request參數
參數名 |
類型 |
是否必須 |
描述 |
goodsId |
long |
是 |
商品id |
返回商品詳情信息,通過Model 進行數據傳遞goods
表4-3 商品詳情Response參數
參數名 |
類型 |
是否必須 |
描述 |
goods.startDate |
Date |
是 |
秒殺開始時間 |
goods. goodsName |
String |
是 |
商品名字 |
goods. goodsImg |
String |
是 |
商品照片 |
goods. goodsPrice |
Double |
是 |
商品原價格 |
goods. miaoshaPrice |
Double |
是 |
秒殺價格 |
goods. stockCount |
Integer |
是 |
庫存 |
goods. id |
Long |
是 |
商品id |
miaoshaStatus |
int |
是 |
秒殺狀態 |
remainSeconds |
int |
是 |
秒殺倒計時(s) |
注:秒殺狀態:0表示還未開始、1表示進行中、2表示秒殺結束
5 秒殺接口
5.1秒殺
接口:/miaosha/ do_miaosha
描述:秒殺
校驗:session
方法:get/post
表5-1 商品詳情Request參數
參數名 |
類型 |
是否必須 |
描述 |
goodsId |
long |
是 |
商品id |
秒殺結束返回訂單信息和商品信息,通過Model 進行數據傳遞goods、orderInfo
表5-2 用戶登錄Response參數
參數名 |
類型 |
是否必須 |
描述 |
goods. goodsName |
String |
是 |
商品名字 |
goods. goodsImg |
String |
是 |
商品照片 |
orderInfo.goodsPrice |
Double |
是 |
訂單價格 |
orderInfo.createDate |
Date |
是 |
下單時間 |
orderInfo.status |
Integer |
是 |
訂單狀態 |
注:訂單狀態:0未支付、1待發貨、2已發貨、3已收貨、4已退款、5已完成