🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
### 接口说明 前端与后端接口开发标准参见:[接口开发 & 规范](http://www.kancloud.cn/xiak/quanduan/275548?_blank) **但是这里情况有点特殊,Java端处理json数据比较麻烦,所以为了方便,接口信息经过如下转换了:** ```php // java风格转换 错误码转换为负数 private function _javaConversion($res) { if (isset($res['errCode'])) { $code = (string) (-$res['errCode']); $res_ = ['status' => ($code != 0 ? $code : -1000), 'msg' => $res['errMsg']]; } else { $res_ = $res; } return $res_; } ``` 也就是,不论成功/失败的(情景)状态,返回数据字段名是统一的。规范是: ```json {"status":"", "msg":"", "data":""} ``` 根据转换方法可知,如果为失败则状态码为负数。 *当然data不是必须的,以实际接口说明为准。* * * * * * ### API接口文档阅读说明 请读者知悉,由于时间关系,为了快速方便,接口文档的书写没有很详细,严格,参数返回格式没有按照标准的json返回来书写,仅供参考,请以接口实际返回为准。 所有接口的返回都会经过上面转换方法转换,但接口文档还是以原数据作说明,请知晓。 如在使用中遇到任何问题,包括但不局限于文档错误,不详细,表述不清楚有歧义等问题,请留言联系我们,谢谢。 * * * * * ### 特别说明 所有接口全部采用JSON作为数据响应(请求以常规form data格式发送即可),系统正确的情况下会保证全部响应以JSON返回(ajax数据解析格式需要设置为:dataType: 'json'),除非系统发生不可控错误,请前端开发人员知悉。 **接口只返回失败和成功两种结果吗?** **是的,接口每次只会返回这两种结果之中的一种。**其实成功和失败两种结果并不是说是系统错误,或者操作失败的意思,比如获取不存在的文章会返回失败,或者用户没有权限查看该文章也会返回失败,这种失败和成功实质是一种情景下操作反馈,是由应用业务逻辑决定的,并不是说是系统错误或者本次操作失败的意思的,返回失败并不是真正的操作失败,而是业务逻辑反馈出来信息,请仔细理解这点。 **以JavaScript为例,不可控的错误需要监控ajax的状态:** ```javascript // 注册全局ajax失败控制 $.ajaxSetup({ error:function(x, e) { layer.open({content: '抱歉,服务忙!'}); return false; } }); ``` last update:2017-3-24 16:39:49