美文网首页
接口定义规范

接口定义规范

作者: LL天HH土 | 来源:发表于2021-04-08 13:15 被阅读0次

前言:前后端协同开发,接口定义至关重要,规范化,效率高,返工少

接口组成

方法、URL、请求参数、返回参数

Snipaste_2021-04-08_10-36-10.png
  • 方法
POST -- 新增
GET -- 获取
DELETE -- 删除
PUT -- 修改
  • URL
TODO - 后端小伙子来定义规范吧
  • 请求参数
{
  // 字段名   字段值      类型      解释      备注    是否必须
  userID:     200, // Number    用户ID     200      必须 
}
  • 返回参数
{
  // 字段名   字段值      类型       解释      备注    是否必须
  code:       200,   // Number    状态码     200      必须 
}

请求/返回参数示例

{
  code: 200, // 标准请求状态码,表示请求是否成功
  data: {
    status: "success", // 逻辑返回状态,用户操作后结果状态:成功/失败/无权限...
    message: "the request is right", // 提示信息:非成功一般会弹出展示给用户
    data: {  // 返回数据 无数据返回null
      pageNo: 1, // 当前页
      pageSize: 10, // 每页条数
      totalCount: 100, // 总共多少条数据
      totalPage: 10,  // 总共几页
      list: [ // 列表数据
        {
          id: 1, // 唯一值id
          name: "张三",
          status: 1, // 1:成功 0:失败
          date: 1617848685984, // 统一用时间戳
          isManager: 1,  // 1:是,0:否
          addr: null
        }
      ]
    }
  }
}

附录:

  • 常用请求返回状态码表
状态码 解释
200 请求成功
301 永久重定向
302 临时重定向
400 错误请求(多见参数不对)
404 文件未找到
500 内部服务器错误

完整状态码

  • 常见返回参数示例以及说明
// 罗列信息数据,直接返回对象即可
{
  code: 200,
  data: {
    status: "success",
    message: "the request is right",
    data: {
      name: 'aaa',
      age: 11,
      addr: '江西省大同市'
    }
  }
}
// 列表数据,直接返回数组
{
  code: 200,
  data: {
    status: "success",
    message: "the request is right",
    data: [
      {
        id: 1, // 列表数据内数据每项需要一个唯一字段
        name: 'susan',
        age: 18,
        sex: girl,
        addr: 'my heart'
      }
    ]
  }
}
// 列表数据+分页
{
  code: 200, // 标准请求状态码,表示请求是否成功
  data: {
    status: "success", // 逻辑返回状态,用户操作后结果状态:成功/失败/无权限...
    message: "the request is right", // 提示信息:非成功一般会弹出展示给用户
    data: {  // 返回数据 无数据返回null
      pageNo: 1, // 当前页
      pageSize: 10, // 每页条数
      totalCount: 100, // 总共多少条数据
      totalPage: 10,  // 总共几页
      list: [ // 列表数据
        {
          id: 1, // 唯一值id
          name: "张三",
          status: 1, // 1:成功 0:失败
          date: 1617848685984, // 统一用时间戳
          isManager: 1,  // 1:是,0:否
          addr: null
        }
      ]
    }
  }
}
// 需要注意:返回Boolean类型用数字1(true)和0(false)表示,Date类型用时间戳
{
  code: 200,
  data: {
    status: "success",
    message: "the request is right",
    data: {
      isGirl: 1, // 1:true, 0: false
      birthday: 1617848685984, // 生日
    }
  }
}

几个mock平台介绍

  • easy-mock 大搜车 无数据校验,正常mock功能,有固定的前缀和后面自定义的uri ,没有对于传入参数的配置,只有返回值的配置
    地址:https://github.com/easy-mock/easy-mock
  • Api-mocker 丁香园 有数据校验,但是url不固定,且不显示uri。有传入参数的配置,也有返回参数的配置
    地址:https://github.com/DXY-F2E/api-mocker
  • eoLinker 广州银云 专业版有数据校验,uri前缀固定,后面自定义的uri
    地址:请自行搜索
  • RAP2-DELOS 阿里妈妈前端团队出品的开源接口管理工具RAP第二代 , 具有请求参数设置, 参数校验, 同一项目里url前缀也是固定的, 很棒的项目
    地址:https://github.com/thx/rap2-delos

参考文章

https://www.jianshu.com/p/bfea560e81d0
https://www.zhihu.com/question/52409287
https://www.jianshu.com/p/15ebd51ea733

相关文章

  • Go 学习笔记 11 | Golang 接口详解

    一、Golang 接口 Golang 中接口定义了对象的行为规范,只定义规范不实现。接口中定义的规范由具体的对象来...

  • 2019-10-14 SpringMVC与Servlet接口 S

    SpringMVC与Servlet接口 Servlet接口规范 Servlet 接口 定义servlet接口规范i...

  • 21 Golang中的接口(一)

    Golang中接口定义了对象的行为规范,只定义规范不实现。接口中定义的规范由具体的对象来实现。 每个接口由数个方法...

  • 13.接口

    接口(interface)定义了一个对象的行为规范,只定义规范不实现,由具体的对象来实现规范的细节。 接口 接口类...

  • Go语言基础之接口

    接口(interface)定义了一个对象的行为规范,只定义规范不实现,由具体的对象来实现规范的细节。 接口 接口类...

  • API接口定义规范

    API接口定义规范 编写时间:2020年02月06号 基本接口共识来源于RESTful接口规范,在这个接口规范的基...

  • 接口定义规范

    工作中,少不了要定义各种接口,系统集成要定义接口,前后台掉调用也要定义接口。接口定义一定程度上能反应程序员的编程功...

  • 接口定义规范

    前言:前后端协同开发,接口定义至关重要,规范化,效率高,返工少 接口组成 方法、URL、请求参数、返回参数 方法 ...

  • Typescript(七)interface接口

    1:接口作为约束与规范 我们可以根据需求来定义接口,然后我们再定义类来实现这个接口。接口为一个或多个类提供规范。 ...

  • Go接口

    接口 接口(interface)定义了一个对象的行为规范,只定义规范不是先,由具体的对象来实现规范的细节。在Go语...

网友评论

      本文标题:接口定义规范

      本文链接:https://www.haomeiwen.com/subject/uwpmkltx.html