前言
前端跟后端在进行接口制定的时候,
- 前端可以写统一的网络请求函数和数据返回处理函数。
- 前端可以对错误进行统一的处理和解析。
后端接口必须返回的字段
接口的版本号(version)
用Version表示, 1.0 , 2.0等等,前端可以传递version=1.0来请求响应版本的接口。
如何识别接口是否调用成功 (code)
借鉴http的状态码,前后端的接口规范辨别一个接口是否调用成功,最好也采用状态码来识别接口是否调用成功:
比如 200代表成功 4xx代表接口不存在, 5xx代表接口调用错误, 6xx代表参数错误等等
这个字段可以用code
表示。
接口的主数据传递(data)
此字段用data表示。
服务端给用户的提示信息(msg)
当服务器出错的时候,需要提示给用户
服务端给开发人员的提示信息(subMsg)
出了给用户的信息提示,比如某些出错信息,有时候服务器的详细错误信息也需要展示出来~ 一般情况下这个消息并不会展示。
在交互上,可以由2种方式去展示这个错误
- 通过代码把window.debug设置为
true
的时候 - 前端提示信息组件可以把详细错误收起来,用户点击箭头的时候,再展示出来。
请求标识(queryId)
请求ID为当次请求的ID,为了让前端识别这是哪次请求返回的数据,这个id为前端发送,后端原样返回。
data字段详细说明
data作为后端返回的主数据,包含的东西比较多,特别返回的结果为数组的时候。
数组字段 list
当返回的结构为数组的时候,往往需要很多附加字段来做标识,所以数组的数据需要放在list里。
page: 页码
有分页的时候需要返回 ,在分页中,page的起页为1,而不能为0
pageSize 每页显示的数量
有分页的时候需要返回,
totalPage 总页数
数据的总页数,数据分页的时候需要返回。
totalCount 总数目
有时候前端需要返回数据的总数,这时候需要把总数返回来。
data: {
page: 1,
pageSize: 1,
list: [{},{}, {}]
}
需要把data预留为一个对象, 为了后期扩展page和pageSize.