- 统一接口命名
/接口版本/模块/对象/行为
例如:
订单管理模块的地址:
post /v1/order/address/create 新增
post /v1/order/address/delete 删除
post /v1/order/address/update 更新
get /v1/order/address/getList 列表信息
get /v1/order/address/getPageList 分页
应用管理模块的banner横幅:
post /v1/app/banner/create
post /v1/app/banner/delete
post /v1/app/banner/update
get /v1/app/banner/getList
get /v1/app/banner/getPageList
如果不需要做接口版本,可去掉v1
- 统一请求头
Accept: application/json
authorization: Bearer eyJhbGciOiJIUzUxMiJ9.eyJleHAiOjE1MzIzMTMyNTYsInVzZXJJZCI6MX0.YeZNjfd2kf7vKlIs4RZfvMO1q3W72CDnnrfwrqv83QTweaBD-ZSWdyL7zjoyyRqvh5tq6tpl2nn-aapYJJVxfg
说明:
authorization 身份认证 jwt
请求参数和返回参数统一使用
驼峰命名法
接口请求 时间,方法时间 使用统一格式 yyyy-MM-dd HH:mm:ss
request?beginTime=1991-07-06&endTime=2001-12-01
response
{
createTime:'2017-09-12 12:23:23'
}
- 结果返回对象
{
"data": {
},
"status": 0
}
- 结果返回数组
{
"data": [
{},{}
],
"status": 0
}
- 结果返回分页
{
"data": [{
}],
"count":int //总数据量
"status": 0
}
- 结果返回统一数据字典(下拉选择)
{
"data": [
{name:'',value:''},
{name:'',value:''}
],
"status": 0
}
- 结果异常返回
{
content:'服务器正在出小差~', //异常内容提示
status:1
}
- 字段翻译
返回内容中需要翻译的字段,在该字段添加Name后缀返回
例如:
{
status:0 //0:发布 1:未发布
}
返回给前端
{
status:0
statusName:'发布'
}
- 结果下载流返回(小文件)
定义 response header:
Content-Disposition: attachment;filename=1532054571821.xlsx
Content-Type: application/octet-stream
将二进制流直接写入response body