这篇文章主要介绍我在一家移动互联网企业的做的接口规范文档,这篇文档帮助团队内部的协作起到很大的作用。可能文章内容会掺杂个人对接口的理解,各位大佬望批评指正。
更新记录
2019-09-21 marker 新增Java代码规范
2019-08-30 marker 发布规范
一、接口签名规则
签名参数为sign,参数排序,md5加密得到sign,所有的app接口都需要验签。
sign = md5(参数排序 + time)
注意:接口的签名规则是保密的,不应该公布,这里提供简单的伪代码案例。
二、接口参数规范
接口参数统一使用表单模式提交,主要有requestbody和form表单,为了规范参数提交,我们统一采用的表单方式。虽然说Java SpringMVC有强大的参数解析器,能自动封装为实体Bean,提供统一的参数规范能降低技术维护成本。
注意:除非特殊的业务需要使用body提交数据的,所有开发人员统一使用表单方式提交。
三、接口请求头规范
DEVICEINFO头 值为json格式,主要为了接口判断实现接口兼容等操作。
json字段
说明
vc
版本code
ver
版本名
ot
终端类型 (ios、android、web)
Authorization 头认证鉴权,Spring Security 验证Token的头参数。
四、接口地址规范
用户端前缀:api/app ,商户端前缀:api/biz