zoukankan      html  css  js  c++  java
  • 后端开发接口规范

    因不同人员的开发习惯不同,造成前后端连调时许多问题要重复确认。也会出现因前后端人员对

    默认值的期望不同而造成的代码缺陷。因此制定本接口规范,规范前后端的开发标准。

     
    参考如下接口文档格式:

    接口名称:审核列表

    接口描述:接口的使用场景

    接口URL: {service}/rider/check/r/new/list

    请求方式:get|post

    请求参数(json对象)// 可以根据需要让后端说明接受的是params还是model

    数据格式:{key1: value1, key2: value2, ...}

    参数名

    数据类型

    是否必填

    取值范围

    含义

    checked

    int

    (0,10)

    审核状态

    userName

    string

    [0, 10]

    用户名

    userPhone

    string

    手机号

    orgId

    int

    组织ID

    cityId

    int

    城市ID

    orgType

    int

    组织类型

    pageNum

    int

    页码号

    pageSize

    int

    每页数据

    返回结果

    1、返回结果要求是json对象

    2、数据格式:{code: 0, msg: "ok", data: {model:{}}} // 真实数据最好放在data内部,前端统一从data里面获取

    3、返回数据字段,都要有字段描述,明确告知前端字段的作用,如下注释内容

    {

    "code": 0,

    "msg": "成功",

    "data": {

    "list": [{

    "accountId": 0, // 账号ID

    "accountSource": 0, // 账号来源

    "bmOrgId": 80, // 组织ID

    "bmRoleCode": 0, // 角色Code

    "bmUserId": 112, // bmID

    "cardNo": "140***********5811", // 身份证号

    "cardNoChanged": false, // 身份证是否修改

    "checked": 0, // 审核状态

    "ctime": "2018-03-26 19:54:55", // 创建时间

    "faceUrlChanged": false, // 头像是否修改

    "gender": 0, // 性别 0:男,1:女

    "genderChanged": false, // 性别是否改变

    "headPortraitUrlChanged": false, // 用户头像是否改变

    "healthCertificateDateChanged": false, // 健康证日期是否改变

    "healthCertificateFaceUrlChanged": false, // 健康证头像是否改变

    "healthCertificateType": 0, // 健康证类型

    "healthCertificateTypeChanged": false, // 健康证类型是否改变

    "healthCertificateUrlChanged": false, // 健康证图片是否改变

    "id": 111, // 唯一标识

    "idCardUrlChanged": false, // 身份证图片是否改变

    "isCheckHealthCertificate": 0, // 是否校验健康证

    "jobType": 0, // 工作类型

    "mobile": "140****1112", // 电话

    "name": "姓名", // 姓名

    "nameChanged": false, // 名字是否改变

    "opUserId": 0, // 操作人ID

    "opUserType": 0, // 操作人类型

    "orgName": "加盟站", // 组织名称

    "orgType": 0, // 组织类型

    "orgTypeName": "自营", // 组织类型名称

    "originOrgId": 0, // 源组织ID

    "utime": "2018-03-26 19:54:55", // 最近更新时间

    "valid": 0 // 是否有效

    }],

    "pageNo": 10,

    "pageSize": 20,

    "totalCount": 2000

    }

    }
    4、数据直接可用,不用前端二次加工(如排序、计算)

    5、列表展示数据如果包含字典类型数据,需要后端直接给出展示名称(前端不做映射处理)

    6、按需给出所需字段,尽可能去掉前端不需要的多余字段

    7、对于各种字段类型,如果不存在必须返回该字段,缺省值如下

    类型

    缺省值

    Array

    [ ] // 空数组

    String

    '' // 空串

    Number

    null

    Json 对象

    null

    linux时间戳

    0

    8、对于 复杂的数据类型,比如 result: {a: '字段1', b: '字段2' }, 假如 result为空,则返回 result: null,而不是 result : { a: '', b: ''}

    分页约定:

    1、请求从第一页开始、即pageNumber 从1开始

    2、后端需返回 pageCount(本次查询返回多少条记录), totalPage(总页数)。

    原文链接:https://blog.csdn.net/qq_22010473/article/details/90473372

    本文仅提供参考,是本人闲时所写笔记,如有错误,还请赐教,作者:阿蒙不萌,大家可以随意转载

  • 相关阅读:
    event.relatedTarget、event.fromElement、event.toElement
    before/after伪类常见用法
    $.getJSON 跨域
    ExtJS中store.findExact
    C#生成6位随机验证码
    C#验证手机号
    jQuery轮播图的事项 代码详细,容易理解。。。。谢谢观赏
    ES6 中 static 的this 丢失问题解决办法 简单明了 备注清晰 谢谢欣赏
    ES6 中 static 的this 问题 简单明了 备注清晰 谢谢欣赏
    ES6 中用class创建img 详细明了,步骤清晰,解释完美,谢谢欣赏
  • 原文地址:https://www.cnblogs.com/huchong-bk/p/11703056.html
Copyright © 2011-2022 走看看