美文网首页
接口文档编写技巧

接口文档编写技巧

作者: 木木与呆呆 | 来源:发表于2020-08-24 15:57 被阅读0次

    1.基本的增删改查接口

    project:项目名称
    object:对象,需要操作的对象,和表关联
    {id}:表的主键
    创建 project/object POST
    更新 project/object PUT
    删除 project/object/{id} DELETE
    查询指定 project/object/one/{id} GET
    查询所有 project/object/all GET
    查询筛选 project/object/queries POST

    注意设计的URL不能冲突,
    比如多个path variable不能在同一个层级。

    开发对应代码方法的命名规则:
    create*
    update*
    delete*
    query*
    queryBatch*
    同义词:
    create -- add, insert, save
    query -- get, select
    queryBatch -- getAll
    建议不要混用同义词,
    使用一套统一的命名方法。

    2.url为多个单词,使用驼峰结构

    proejct/myDesignObject POST

    3.返回单条结果和多条结果的区别

    单条结果直接是一个对象,
    多条结果是多个对象的List,
    表述如下:
    objects List<Object>
    Object:对象具体字段
    result1 String
    result2 String

    多条结果返回的json中不需要体现出objects,
    只需要直接包含对象的数组即可。
    说明:比如响应参数的objects是一个List类型,
    在返回的JSON报文中直接是一个数组,
    不需要业务另外包装一个有nodes节点的对象返回。

    4.返回的多个结果不是对象,是String等基本类型

    表述如下:
    results List<result>
    result具体的字段描述:
    result String
    特点是result不能大写,
    如果是Result则是一个对象,
    另外只能是一个具体的字段。

    5.请求参数二选一

    请求参数可能是PathVariable(RequestParam)
    或者Request Body的一种,
    如果URL中带了参数,就不要使用Request Body携带参数,
    除非有特别的另外说明,
    这两种方式建议是二选一,
    不要混合使用。

    6.表的创建时间和更新时间操作时机

    创建对象的时候,创建时间填写为系统时间,
    更新对象的时候,更新时间填写为系统时间。
    一般情况下在系统中填写时间参数,
    不要额外让调用方传入时间参数。

    7.URL中带有冒号:等特殊符号

    使用@RequestParam代替@PathVariable
    即使用project/object?id={id}这种URL
    而不要使用project/object/{id}

    8.只有一个参数优先使用URL携带

    请求参数如果只有一个,
    优先在URL中携带这个参数,
    而不是在请求体中携带,
    因为一个参数的请求体会被错误的使用,
    即使一个请求体也要封装对应的请求类。
    比如请求参数"id":"001",
    对应URL:
    project/{id}
    String id
    对应RequestBody:
    {"id":"001"}
    对应封装的返回类:
    class IdReq{
    prviate String id;
    }

    9.分页参数

    确定分页参数第一页从0还是从1开始,
    建议pageNum=1代表第1页,
    即分页参数从1开始,
    Mybatis的PageHelper分页插件,
    对应参数pageNum=0有不同的处理方式,
    所以可以统一第一页分页从1开始。

    分页参数是通过URL传递还是通过Body传递,
    由于Get方法中只能通过URL传递参数,
    可以统一为分页参数都在URL中传递,
    这样方便编写接口文档描述分页规则,
    但是注意上面5.请求参数二选一的规则,
    此时该条规则优先级更高。

    10.HTTP响应参数

    说明:响应参数使用的是HTTP协议的返回,不需要业务单独处理。

    相关文章

      网友评论

          本文标题:接口文档编写技巧

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