各位大神,你们定义接口的时候会把所有接口都返回200状态码,然后在返回内容中定义errorcode;还是使用4XX或者5XX作为返回的http状态码?
1.status_code全部200,响应体如下:
成功
{
errcode: 1001,
errmsg: 密码不正确,
data: obj // 数据主体
}
2.失败(4xx,5xx),返回errcode和errmsg
{
errcode: 1001, //或者没有errcode
errmsg: '账号或密码错误',
}
-----------------------------------
稍微扩展一下
其实吹起用直接用httpstatus来表示各种业务状态,应该是从rest风开始的,有一段时间想弄一些标准的restful接口,但是实际设计中感觉并不太好用。
1、用4XX或者5XX确实很多业务状态表述不清,而且对报警不太友好。但是有个好处是做缓存的时候比较方便,只缓存200的。
2、用put、delete、post、get,其实很多人也不太搞得懂,而且兼容性也不太好,依然有一些业务接口不太好表达
不知道大家的看法是啥