SpringBoot第十二篇:springboot集成apidoc
首先声明下,apidoc是基于注释来生成文档的,它不基于任何框架,而且支持大多数编程语言,为了springboot系列的完整性,所以标了个题。
一、apidoc简介
apidoc通过在你代码的注释来生成api文档的。它对代码没有侵入性,只需要你写好相关的注释即可,并且它仅通过写简单的配置就可以生成高颜值的api接口页面。它基于node.js,所以你需要安装node.js环境。node.js安装,点击这里。这里就不介绍。
二、准备工作
安装完node.js安装api.doc,它的项目源码:https://github.com/apidoc/apidoc 。
通过命令安装:
npm install apidoc -g
三、注释怎么写
@api
@api {method} path [title]method:请求方法,
path:请求路径
title(可选):标题
@apiDescription
@apiDescription text
text说明
@apiError
@apiError [(group)] [{type}] field [description](group)(可选):参数将以这个名称分组,不设置的话,默认是Error 4xx
{type}(可选):返回值类型,例如:{Boolean}, {Number}, {String}, {Object}, {String[]}
field:返回值字段名称
descriptionoptional(可选):返回值字段说明
@apiGroup
@apiGroup name
name:组名称,也是导航的标题
更多注释,参见官方文档:http://apidocjs.com/#params
四、写给栗子
首先写配置文件
在项目的主目录新建一个apidoc.json文件:
{"name": "example","version": "0.1.0","description": "A basic apiDoc example"
}
更多配置参考:http://apidocjs.com/#configuration
写个注释:
/*** @api {POST} /register 注册用户* @apiGroup Users* @apiVersion 0.0.1* @apiDescription 用于注册用户* @apiParam {String} account 用户账户名* @apiParam {String} password 密码* @apiParam {String} mobile 手机号* @apiParam {int} vip = 0 是否注册Vip身份 0 普通用户 1 Vip用户* @apiParam {String} [recommend] 邀请码* @apiParamExample {json} 请求样例:* ?account=sodlinken&password=11223344&mobile=13739554137&vip=0&recommend=* @apiSuccess (200) {String} msg 信息* @apiSuccess (200) {int} code 0 代表无错误 1代表有错误* @apiSuccessExample {json} 返回样例:* {"code":"0","msg":"注册成功"}*/
用apidoc命令生成文档界面
先cd到工程的外层目录,并在外层目建个输出文档的目录,我建的是docapi。
输命令:
apidoc -i chapter4/ -o apidoc/
-i 输入目录 -o 输出目录
chapter4是我的工程名。
可以看到在apidoc目录生成了很多文件:
打开index.html,可以看到文档页面:
五、参考资料
apidoc
apidocjs.com
使用apidoc 生成Restful web Api文档
SpringBoot第十二篇:springboot集成apidoc相关推荐
- SpringBoot第二十二篇: 创建含有多module的springboot工程
这篇文章主要介绍如何在springboot中如何创建含有多个module的工程,栗子中含有两个 module,一个作为libarary. 工程,另外一个是主工程,调用libary .其中libary ...
- springboot系列十二、springboot集成RestTemplate及常见用法
一.背景介绍 在微服务都是以HTTP接口的形式暴露自身服务的,因此在调用远程服务时就必须使用HTTP客户端.我们可以使用JDK原生的URLConnection.Apache的Http Client.N ...
- 跟我学SpringCloud | 第十二篇:Spring Cloud Gateway初探
SpringCloud系列教程 | 第十二篇:Spring Cloud Gateway初探 Springboot: 2.1.6.RELEASE SpringCloud: Greenwich.SR1 如 ...
- matlab最优控制实验报告_第十二篇 章 用MATLAB解最优控制问题及应用实例 最优控制课件.ppt...
第十二篇 章 用MATLAB解最优控制问题及应用实例 最优控制课件.ppt 综上所述可得结论:Q=diag(1,0,0),R=2时,系统各方面响应较好. 矩阵Q变大时,反馈矩阵变大: 当Q的对角线上第 ...
- CCIE-LAB-第十二篇-EIGRP+EIGRP末节区域+leak map+分发列表
CCIE-LAB-第十二篇-EIGRP+EIGRP末节区域+leak map+分发列表 实际中,思科只会给你5个小时去做下面的全部配置 这个是CCIE-LAB的拓扑图 问题 翻译:1.确保分支3分支4 ...
- CCNA-第十二篇-STP+ACL(下)
CCNA-第十二篇-STP+ACL(下) 首先说说要跳跳了 立个小FLAG, 两个月内急速完成CCIE理论+LAB实操 因为接了个工作,主要我能做到就能做这份工作. 其实NP中间的点很多都会,只是因为 ...
- CCIE理论-第十二篇-IPV6-NDP协议
CCIE理论-第十二篇-IPV6-NDP协议 首先我们知道 在IPV4中 A:0.0.0.1-126.255.255.255 B:128.0.0.1-191.255.255.255 C:192.0.0 ...
- 国外交友网站开发源码 第十二篇
最近由于工作生活的事情比较多,所以就没有更新,这篇是国外交友网站开发源码 第十二篇 希望大家能够喜欢. 私信列表 class WechatController extends SiteControll ...
- 「第十二篇」漏洞扫描
批注[--] 表示他人.自己.网络批注参考资料来源于* 书中批注* CSDN* GitHub* Google* 维基百科* YouTube* MDN Web Docs由于编写过程中无法记录所有的URL ...
最新文章
- \V110\Microsoft.CppCommon.targets(347,5): error MSB6006: “CL.exe”已退出,代码为 -1073741515。的解决方法
- blender硬表面建模渲染终极教程
- c++版a+b问题的各种无聊做法
- python视频教程大全
- 又到校招季,来说说面试和实习
- vs中c#的项目配置,平台配置
- css 透明度_如何在网页控制透明度
- 虚拟机运行Gazebo出现VMware: vmw_ioctl_command error
- 云服务器饥荒_运用双腾讯云搭建《饥荒》多人联机服务器
- 非常经典的C语言知识点总结!
- 敏感词过滤算法的实现
- springboot整合mysql数据库_springBoot 集成Mysql数据库
- crc8校验c语言程序,单片机CRC8检验C语言实现
- C++程序设计基础(揣锦华版)课后习题答案-第一章:程序设计基础知识
- 01、winPE64位 -- UEFI+GPT启动引导分区方式 -- win10专业版(1903)64位安装 -- 数字许可永久激活
- 嵌入式和单片机的区别在哪?
- 罗马数字与十进制数字对应生成(1-3999)
- 十多个巨头App上可跑智能小程序了
- android开机调用搜狗输入法
- Androidstudio通过无线连接进行调试