1. 请求域名

  • 测试环境:<待补充>
  • 生产环境:<待补充>

2. 接口规范

3. 数据格式

3.1. 分页

3.1.1. 请求格式

{
    "pageNo": 1,         // 页码
    "pageSize": 10,      // 每页条数
    "order": {
         "orderNum": "asc"  // 排序字段、排序顺序(asc正序,desc倒序)
        }
}

3.1.2. 返回格式

{
    "code": 200,           // 200表示请求成功,其他情况参考错误码列表
    "data": {               // 返回数据顶层结构
        "total": 1,        // 分页返回总条数
        "pages": 1,        // 分页返回总页数
        "records": [       // 分页返回列表数据结构顶层
            {
            }
        ],
        "pageNo": 1,     // 页码
        "pageSize": 10  // 每页条数
    },
    "message": "success" // 默认值为success,其他值根据错误码解析相应的提示信息
}

4. 授权鉴权

5. 签名加密

5.1. 参数排序,以key的ASCII码值从小到大开始排序;

5.2. 把排序后的参数(字典)转为字符串,因为字典是无序的,不能使用json转换的方式直接转为字符串,所以在键key排好序后,按顺序读取value拼接成字符串

5.3. 在参数转换为字符串过程中,遇到参数中有字典或数组嵌套的数据需要层层递归排序

5.4. 由于后端接收参数时会把值为null的键值对忽略,不进行签名,故在拼接参数字符串过程需要把这种键值对忽略掉

5.5. 获得参数字符串后,重新序列化为字典,并把该字典作为网络请求的参数(拼接参数字符串过程由于值的读取和格式化,基础数据类型容易被修改,以及忽略了null参数,所以不能使用旧参数进行请求,否则会与后端接收的入参不一致)

5.6. 按顺序(ASCII码值从小到大)拼接 appId、body(参数字符串)、header(包括:Authorization(token)和 timestamp ),拼接结果作为签名的原串

5.7. 把签名原串进行MD5加密得到最终签名sign

5.8. 把签名和时间戳放在请求头

6. 错误码

6.1 HTTP状态码

HTTP状态码 描述
200 正常
4xx 请求异常
500 服务器异常

6.2 自定义异常

异常代号 描述
Copyright © www.remacsmart.com/ 2021 all right reserved,powered by Gitbook该文件修订时间: 2022-01-24 17:03:55

results matching ""

    No results matching ""