日常项目开发的过程中,接口文档是必不可少的。后端工程师与前端工程师之间需要接口文档来定义数据传输协议、系统对外暴露接口需要文档来说明、系统之间相互调用需要文档来记录接口协议等等。对于一个完整的项目,接口文档是至关重要的。那我们如何写好一份接口文档呢?今天就让我们说一说接口文档几个重要的要素。

api

1、接口概述

接口概述主要说明本接口文档涉及到的业务功能点,面向的阅读对象以及接口文档主要包括哪些业务的接口,可以让读者有一个直观的认识。如:本文档定义了中台系统面向外部接入方的数据协议接口,主要包括:用户注册接口、同步用户、授权认证等接口。适合阅读的对象为接入中台开发者或者外部合作方…。这样的一段描述,对于阅读者来说可以对整个接口文档有一个大概的认识。

接口概述

2、权限说明

有的接口调用需要授权认证,在这部分需要进行说明。如果接口只是基于分配的token认证,那文档需要说明token的获取方式。如果接口需要进行签名认证,需要在这里说明签名的具体方法,如下图:

sign参数的生成规则要具体说明,最好能示例说明,如:

签名方式

这样接入方可以验证自己的签名方式是否正确。

3、编码方式

接口的请求过程中可能由于编码导致乱码,所以,接口必须约定编码方式,参考以下写法:

编码方式

4、请求说明

接口文档的请求说明中主要说明接口请求的域名以及请求的数据格式:如

请求说明

5、接口列表

接口列表是接口文档的主要内容,这部分内容需要列出所有的接口名称、接口地址、接口的请求方式、接口的请求参数以及响应格式。在接口的请求参数中我们需要说明每个参数的含义、类型以及是否必须等属性。对于接口响应结果,如果有业务字段,也需要进行说明。下面是一个比较完整的示例:

接口示例

6、状态码说明

接口的响应体一般都会带有响应的状态码,例如成功、失败等。状态码有助于接入方进行接口调用状态的判断。如:

状态码

接口文档如果能体现出以上几个要素,那可以算是一个完整的接口文档,对于接入方来说可以很好的阅读理解。

java接口文档怎么写_如何写好API接口文档相关推荐

  1. 京东商品详情APP原数据API接口-(item_get_app-获得JD商品详情原数据API接口),京东API接口

    一.京东商品详情APP原数据API接口-(item_get_app-获得JD商品详情原数据API接口),京东API接口代码如下: 1.公共参数 名称 类型 必须 描述 key String 是 调用k ...

  2. java前端接口怎么写_如何写出优雅的后端API接口?

    目录前言 接口交互 返回格式 控制层Controller 美观优化 优雅优化 实现方案 总结 前言 在移动互联网,分布式.微服务盛行的今天,现在项目绝大部分都采用的微服务框架,前后端分离方式,(题外话 ...

  3. api接口怎么写_面向声明式API编程(DAP)

    DAP是Mars-java 最近提出的一个新的开发方式,全称 Declarative API Programming, 提倡后端为一个独立的整体,不应该是为前端服务的,所以当前端需要接口的时候,只需要 ...

  4. php怎么根据接口文档实现功能,CodeIgniter+swagger实现 PHP API接口文档自动生成功能...

    一.安装swagger 1.首先需要有composer,没有的自行百度安装 2.下载swagger,打开网站https://packagist.org/packages/zircote/swagger ...

  5. 写java线程导致电脑内存不足_如何写出让java虚拟机发生内存溢出异常OutOfMemoryError的代码...

    程序小白在写代码的过程中,经常会不经意间写出发生内存溢出异常的代码.很多时候这类异常如何产生的都傻傻弄不清楚,如果能故意写出让jvm发生内存溢出的代码,有时候看来也并非一件容易的事.最近通过学习< ...

  6. json 文档拆分工具_如何把PDF多页文档拆为单页?快看高手私藏实用的技巧

    如何把PDF多页文档拆为单页?有时一份PDF文件页面过多,当我们只想提取部分页面内容时,就需要进行PDF拆分的操作.但很多小伙伴都不知道PDF如何拆分页面,想要拆分PDF文件,首先你得拥有一个PDF拆 ...

  7. java 新浪短网址生成器,新浪短链接接口被限制?最新新浪短网址api接口

    背景 新浪短网址api是sina平台官对外公开的短网址生成接口,可以将长链接通过接口生成t.cn样式的短链接,可以说是非常好用的.但近期新浪官方开始对已经公布的接口做出了多重限制,很多之前能用的功能现 ...

  8. 中望CAD的lisp编辑器_中望CAD+API接口应用教程之Lisp篇

    前段时候中望公司发布了新一代拥有全新内核的产品:中望CAD+,作为一个国产CAD软件的支持者,我进行了下载测试,使用过后确实有了耳目一新的感觉,新功能方面有很多朋友已经做了深入的评测,我就不凑热闹了, ...

  9. 中望CAD调用lisp在哪_中望CAD+API接口应用之Lisp篇

    前段时候中望公司发布了新一代拥有全新内核的产品:中望CAD+,作为一个国产CAD软件的支持者,我进行了下载测试,使用过后确实有了耳目一新的感觉,新功能方面有很多朋友已经做了深入的评测,我就不凑热闹了, ...

  10. 写了一个随机图片API接口,用来做博客园随机背景,欢迎使用,禁止爬取,需要套图可以直接联系博主...

    20190917更新,今天早上发现接口突然不能用了显示ERR_TIMEOUT,上服务器看了一下进程还在运行,初步推测是web服务器的问题, flask是个web框架,也做了web服务器,但是非常的简单 ...

最新文章

  1. MNMBottomPullToRefresh
  2. Spring 是解析配置类过程详解
  3. MySql 查询同一字段多个结果合并到一行显示 GROUP_CONCAT
  4. 第三次小组赛解题报告
  5. flutter offset_Flutter 仿微信界面聊天室 | 基于 (Flutter+Dart) 聊天实例
  6. [Spring5]IOC容器_底层原理
  7. tecplot批量导出图片_批量导出Excel图片,用这招,半分钟干的活别人一整天完不成...
  8. 升级过log4j,却还没搞懂log4j漏洞的本质?
  9. linux列举网卡,linux下快速列出局域网中所有主机名(计算机名)的脚本
  10. 【word使用技巧】删掉某一行参考
  11. 读卡器行业调研报告 - 市场现状分析与发展前景预测(2021-2027年)
  12. 软件公司的管理规范化了、编制都齐全了,一般小公司是承受不了的这么庞大的开支的...
  13. python orm开发模型_Python ORM框架Peewee初探【二】创建或者生成模型
  14. 照相机成像原理 数码相机的成像原理
  15. CSR8311/CSR8811 HCI vendor command说明
  16. 浅析Minecraft直播弹幕模组BakaDanmaku源码
  17. 9. Enhancing Aspect Term Extraction with Soft Prototypes论文阅读笔记
  18. 《好妈妈胜过好老师》书摘
  19. 10年后重温《我奋斗了18年才和你坐在一起喝咖啡》
  20. 齐次线性方程组的基础解系

热门文章

  1. 《大数据分析技术》课程设计
  2. YUV与RGB格式转换
  3. android 抓取解析systrace
  4. 9大最佳知识库软件/文档管理工具
  5. gflags的交叉编译
  6. SKLEARN实例:【用随机森林回归填补缺失值】
  7. Linein和Micin的区别
  8. java字符串长度_Java字符串长
  9. 牛客网高级项目课总结
  10. lcs算法 php,使用PHP编写的LCS算法