数据收集
统一返回数据格式:
整个请求根据三层递进原则进行封装:
- 请求错误:整个请求失败(404、或者未到服务器等),无返回值(服务器不处理);
- 服务错误:请求正常,但是接口调用服务出错(例如服务挂了,数据库出错等),错误信息填写在返回数据最外层的 Message 之中;
- 规则错误:请求正常,接口服务调用也正常,但是触发了规则错误情况(例如注册用户却发现用户名同名导致注册失败,或者字段长度要求1-20,但实际却传了100),错误信息填写在 data 中。自行根据接口不同约定数据格式;
- 其中一和二在每个接口都有可能触发,因为每个接口都会调用一些服务器。
- 而三对于某些接口是不会触发的(也就是不需要写错误信息)
// 最外层数据结构,所有接口统一
{
StatuCode:"0", // 返回的状态码,正确的是0,错误是小于0,其他信息大于0
Message:"操作成功", // 返回信息,返回的说明
IsSuccessed:true, // 布尔型,是否成功的标志
Data:{} // 返回数据,对象,下面的返回数据指这个 data 属性的值
}
账号注册:
url: '/User/Add'
type: 'post'
data: 均为字符串,长度1-20
{
Account: '',
Password: '',
Mobile: '',
QQ: '',
}
返回数据:
{
Success: true/false, // 布尔,指注册是否成功
Msg: "注册成功|失败|用户名重复等", // 字符串,指注册返回信息
}
站点注册:
url: '/Site/Add'
type: 'post'
data: 均为字符串
{
SiteName: '', // 站点名,长度1-20
SiteDescription: '', // 站点描述,非必填,长度0-100
}
返回数据:
{
Success: true/false, // 布尔,指注册是否成功
Msg: "注册成功|失败|用户名重复等", // 字符串,指注册返回信息
}
拉取站点列表:
url: '/Site/Getlist'
type: 'get'
data: null
返回值:
{
list: [ // 返回站点list
{
name: '站点名', // 站点名
id: '', // 站点id
}
]
}
注册页面:
url: '/Page/Add'
type: 'post'
data:
{
PageName: '‘, // string,页面名
PageUrl: '', // string,页面链接
Site: '' // string,页面所属站点的 id
}
返回数据:
{
Success: true/false, // 布尔,指注册是否成功
Msg: "注册成功|失败|用户名重复等", // 字符串,指注册返回信息
}
页面列表查询
url: '/Page/GetList'
type: 'get'
data: null
返回数据:
[
{
SiteName: '站点A', // 站点名
SiteId: '123', // 站点id
PageName: '页面名', // 页面名
PageId: '456', // 页面id
PageUrl: 'http://www.baidu.com' // 页面链接
}
]