接口返回值规则

技术团队工作中,接口的规则相当重要。接口可分为两部分,入参和返回值。下面就简单阐述我的相关思考:

返回结果,使用json表示:
{“code”:0,”thirdCode”:”“,”msg”:”[font=宋体]操作成功[/font]”, “data”:{“fUid”:2,”fToken”:”31ba90af-5468-4d87-9b6eeaa001112ab1f”,”fTokenExptime”:1431059268000}}
说明如下:code:整型,错误代码,如果本次操作成功为0,10000以内表示返回值合理;10000-19999为系统自定义错误;20000-29999为第三方错误;
thirdCode:字符串,表示第三方库返回的结果编码,默认为空字符串
msg:字符串,msg是本次操作的简单说明,“errorCode=0”时为操作成功,其他则反映对应errorCode表示的信息
data:具体返回的数据

code枚举值如下:
空数据:1
未知错误 10001;
校验错误 10002;
权限错误 10003;
参数错误 10004;
XX支付平台:21001;
XX短信平台:22001。

举例说明:某人刚注册一个网站,接下来登录成功:{“code”:0,”thirdCode”:null,”msg”:”登录成功”, “data”:{“fUid”:2,”fToken”:”31ba90af-5468-4d87-9b6e-aa001112ab1f”,”fTokenExptime”:1431059268000}}
使用支付充值时,填写银行卡号出错:{“code”:22003,”thirdCode”:”2367”,”msg”:”姓名与账号不匹配”, “data”:null} 其中,2367是支付平台的错误代码,“姓名与账号不匹配”是支付平台自定义的错误信息。
接着,查询投资记录,此时投资记录为空:
{“code”:1,”thirdCode”:null,”msg”:”数据为空”, “data”:null}
投资记录为空,这个结果是合理的
接下来,继续使用支付平台充值,此时充值成功:{“code”:0,”thirdCode”:”2000”,”msg”:”充值成功”, “data”:null}
支付平台用2000表示充值成功
然后投资某个项目:{“code”:0,”thirdCode”:null,”msg”:”投资成功”, “data”:null}
最后查询投资记录:{“code”:0,”thirdCode”:null,”msg”:”“, “data”:[{“fId”:44,”fName”:”个人经营房产抵押借款(20150812)”,”fNo”:”R15081914”,”fFinancingStart”:100.00,”fPeriodType”:2,”fPeriod”:23,”fAlreadyFinancingAmount”:3000.00,”fFinancingAmount”:150000.00,”fType”:1,”fShowType”:2,”timeStatus”:2,”startInvestLine”:1439344800000,”fAnnualBaseInterest”:7.00}]

由上可知,返回值为保持通用型,尽量保持简单合理;同时,考虑到接入第三方平台不可避免,需要保留第三方信息。
最后,为保持简洁和统一,再加入3个注意事项:
1.金额,以分为单位,比如3.1元,必须转为310分
2.银行卡建表时,直接以卡号做为主键,不再另设id
3.时间:以1970年1月1日0时0分0秒起计算的毫秒,如1431059268000

你可能感兴趣的:(接口-返回值)