接口的需求
- 支持get/post/put/delete
- 可以合并请求,一次请求多个接口。利于端减少请求。比如配置接口,一个配置接口,根据传参取配置数据。
- 基于页面和行为的接口规范。
资源。简单资源的增删改查。
- 项目/v1/资源,比如user/v1/user。
- user/v1/user。用户列表
- user/v1/user/follow。关注的用户列表。请求或响应和user/v1/user不同时,算一个新的资源。
- user/v1/user/{id}。某个用户
- user/v1/user/{id}/small。某个用户的简要资料
什么时候需要页面/行为接口。
- 性能问题。从多个资源取数据太慢。
- 事务问题。操作需要是原子性的,同时成功同时失败,不能拆分成步骤。
- 安全和权限问题。有些数据有权限才能使用,而权限和页面是关联的。
- 页面文案等配置。
页面。单个页面中混合了多个资源。
- 项目/v1/模块/page/页面,比如user/v1/user/page/index。
- 页面的命名规范。
- 首页。index。
- 列表页。list。
- 详情页。detail。
- 页面文案配置。
- 在移动端或PC端等客户端,为了不发版就改变端的页面,需要通过接口配置端的内容。
- 在手工位由端开发人员添加json配置,通过页面接口或者端配置接口获取。
- 端配置接口,允许获取配置中心这个端的所有配置。
行为,事件。一个行为触发对很多资源的操作。
- 项目/v1/模块/event/行为名。比如user/v1/user/event/login。
文档。
- 域名。
- 通用参数。
- 请求URL
- 请求方法
- 请求参数。字段/类型/是否必须/说明
- 请求示例
- 响应字段。字段/类型/说明
- 响应示例