接口规范

  • 统一接口命名 /接口版本/模块/对象/行为
例如:
订单管理模块的地址:
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
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 简介 由于目前SRM移动应用API接口返回的的格式比较混乱,为了能够是确保API接口统一规范,定义以下规范,编写是...
    薪火设计阅读 5,211评论 0 1
  • 亲爱的二千微友,中午好!自从事专业微商以来,每天感觉自己的生活都是如此忙碌而充实!转眼间,特种兵训已开训了一个星期...
    绒布峰针董事叔娟阅读 1,898评论 0 0
  • 从小体弱多病,可是从来没有下过决心去努力锻练身体,所以年复一年,日复一日,我依然是自己柔弱的样子,眼看步入中年,才...
    暖暖的被爱阅读 1,781评论 0 1
  • “沐岩,我们分手吧?”馨甜很无奈地说。“为什么?难道我们这几年的感情就这么白费了?”此时的詹沐岩已经泣不成声。“有...
    木日易爻阅读 2,675评论 0 0