基于 Markdown 编写接口文档
最近公司开发项目需要前后端分离,这样话就设计到后端接口设计。复杂功能需要提供各种各样的接口供前端调用,因此编写API文档非常有必要了
网上查了很多资料,发现基于Markdown编写文档是一种比较流行而且成熟的方案了,话不多说,我也搞一搞试试。
电脑操作系统:deepin深度 Linux64位,比较难用的一个系统,但是公司强制使用,没办法
1、这里我用到了gitbook,GitBook 是一个基于 Node.js 的命令行工具,支持 Markdown 和 AsciiDoc 两种语法格式,可以输出 HTML、PDF、eBook 等格式的电子书。关于更多介绍可以参考:http://www.chengweiyang.cn/gitbook/introduction/README.html 。安装gitbook可以直接使用命令: npm install gitbook-cli -g 来进行安装。 当然前提是安装了nodejs ,因为我们前端项目用的vue,加载依赖也需要nodejs,所以我已经提前装好了直接使用。安装nodejs可以参考:https://www.cnblogs.com/liuqi/p/6483317.html(非常赞)
执行完上面命令以后,可能需要设置软连 nodejs中的gitbook :ln -s /opt/nodejs/bin/gitbook /usr/local/bin/gitbook ,然后执行gitbook -V 来查看版本,首次会自动安装gitbook。
2、安装好gitbook以后,你就可以新建一个目录,mybook ,然后进去直选命令两个命令:gitbook init , gitbook serve。 gitbook init命令是初始化你的书籍,会自动生成两个文件,SUMMARY.md可以理解为整个书籍的目录。如下图:

然后继续直行gitbook serve 就会根据SUMMARY.md来编译书籍 如下:

然后就可以通过 http://localhost:4000/ 地址访问啦。

提示:我刚安装好gitbook以后是执行不到 “gitbook” 这个命令的,可以通过创建软链接 解决,root权限下,执行 : ln -s /opt/nodejs/bin/gitbook /usr/local/bin ,然后退出root就可以执行 gitbook命令啦,可以通过gitbook -V来查看版本
3、gitbook准备就绪,然后你还需要一个编辑工具,编辑工具应该有很多,我找到了一个是 Typora ,用了一下感觉还是比较好用,以后有机会再用其他的吧。 Typora安装可以参考官网,https://www.typora.io/#linux ,安装也非常简单。
执行以下命令:
# or run:
# sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys BA300B7755AFCFAE
wget -qO - https://typora.io/linux/public-key.asc | sudo apt-key add -
# add Typora's repository
sudo add-apt-repository 'deb https://typora.io/linux ./'
sudo apt-get update
# install typora
sudo apt-get install typora
需要注意的是 add-apt-repository 这个命令是需要安装一个python包的, 直接执行:apt-get install python-software-properties 安装完成以后应该就可以执行了。如果还是不行,可以自行google或者百度一下
4、Typora 安装好以后,就可以用它打开文档进行编辑了,去mybook目录下,执行 typora SUMMARY.md 就可以进行编辑啦 ,然后下面就是SUMMARY的内容,使用 markdown语法进行编辑就可以了。
# Summary * [前言](README.md)
* [一、登录模块](Chapter1/README.md)
* [登录接口](Chapter1/登录接口.md)
* [登录发送短信](Chapter1/登录发送短信.md)
* [提交短信&支付密码登录](Chapter1/提交短信&支付密码登录.md)
使用typora打开以后,效果图如下:

5、大功告成,gitbook可以实时刷新,当你用编辑器修改内容以后,马上就可以在浏览器中看到效果。如果需要新增页面,就直接修改SUmmary.md,修改完成页面以后,执行 gitbook init就会自动创建。然后再用 typora打开编辑就行了。 后记:还可以使用gitbook功能生成pdf文档,但是需要提前安装 sudo apt-get install calibre 包,如果不安装执行命令会报 InstallRequiredError: "ebook-convert" is not installed. Install it from Calibre: https://calibre-ebook.com 错我。
在书籍目录下执行命令:gitbook pdf ,就可以生成pdf文档啦
基于 Markdown 编写接口文档的更多相关文章
- Markdown编写接口文档模版
接口名称 1) 请求地址 https://apis.cnblogs.com/user/info?a=xx&b=xx 2) 调用方式:HTTP GET 3) 接口描述: 接口描述详情 4) 请求 ...
- Markdown写接口文档,自动添加TOC
上回说到,用Impress.js代替PPT来做项目展示.这回换Markdown来做接口文档好了.(不敢说代替Word,只能说个人感觉更为方便)当然,还要辅之以Git,来方便版本管理. Markdown ...
- 使用 Laravel-Swagger 编写接口文档(php)
使用 Laravel-Swagger 编写接口文档 Table of Contents Swagger 文档管理 官方网站:https://swagger.io/ 快速编写你的 RESTFUL API ...
- 作为Java开发工程师,如何高效优雅地编写接口文档
作为一名优秀的Java开发工程师,编写接口文档向来是一件很头疼的事情.本来就被bug纠缠的很累了,你还让我干这? 其实,你可以试试ApiPost. ApiPost的定位是Postman+Swagger ...
- 基于swagger进行接口文档的编写
0. 前言 近期忙于和各个银行的代收接口联调,根据遇到的问题,对之前编写的接口进行了修改,需求收集和设计接口时想到了方方面面,生产环境下还是会遇到意想不到的问题,好在基本的执行逻辑已确定,因此只是对接 ...
- 几款常用的在线API管理工具(是时候抛弃office编写接口文档了)
在项目开发过程中,总会涉及到接口文档的设计编写,之前使用的都是ms office工具,不够漂亮也不直观,变更频繁的话维护成本也更高,及时性也是大问题.基于这个背景,下面介绍几个常用的API管理工具,方 ...
- 使用 VS Code + Markdown 编写 PDF 文档
背景介绍 作为一个技术人员,基本都需要编写技术相关文档,而且大部分技术人员都应该掌握 markdown 这个技能,使用 markdown 来编写并生成 PDF 文档将会是一个不错的体验,以下就介绍下如 ...
- 使用Spec Markdown 编写手册文档
Spec Markdown 是一个基于markdown 的文档编写工具,安装简单,可以让我们编写出专业的文档 参考项目 https://github.com/rongfengliang/spec-md ...
- [API]使用Blueprint来高雅的编写接口文档 前后端api文档,移动端api文档
网址:http://apiary.io/ 介绍:一款非常强大的前后端交互api设计编辑工具(编辑器采用Markdown类似的描述标记,非常高效),高颜值的api文档,还能生成多种语言的测试代码. 中文 ...
随机推荐
- 微信分享大图遇到的问题(Android)
起因: 要做一个微信图片分享的功能,但是对于大图会如下问题: 当时没有仔细查看错误日志,单纯的以为是图片太大的问题. 分享图片代码: public void WXsharePic(String tra ...
- jsp页面中include静态html出现乱码问题的解决方式
这个问题出现过两次,上次没有做好记录,今天又出现了.不过这两次的情景也不完全一致. 今天通过搜索找到这篇文章的解决方式很好,可供参考.原博客地址http://blog.csdn.net/izgnaw/ ...
- live-server 介绍&安装
live-server是可以运行前端静态文件的一个服务器,既然我们要前后端分离,所以就需要单独将html代码运行起来,这里我们选择live-server,等到后边真正部署的时候在用nginx js的解 ...
- C#中,三种强制类型转换的对比
在C#中,我们可以看到三种强制类型转换,比如强制转换成有符号32位整型,可以找到下面三种方式: ① (int)() ②Convert.ToInt32() ...
- 浅析C#中new、override、virtual关键字的区别
Virtual : virtual 关键字用于修饰方法.属性.索引器或事件声明,并使它们可以在派生类中被重写. 默认情况下,方法是非虚拟的.不能重写非虚方法. virtual 修饰符不能与 stati ...
- Thermostat:双层存储结构的透明巨页内存管理机制
这是一篇由密歇根大学的Neha Agarwal 和 Thomas F. Wenisch,发表在计算机系统顶会ASLOS的论文,Thermostat: Application-transparent P ...
- 功能测试话题分享-0323 Bug
- 免费了 -- EXCEL插件 智表ZCELL 普及版V1.0 发布了!!!
智表(zcell)是一款浏览器仿excel表格jquery插件.智表可以为你提供excel般的智能体验,支持双击编辑.设置公式.设置显示小数精度.下拉框.自定义单元格.复制粘贴.不连续选定.合并单元格 ...
- ASP.NET MVC 自定义模型绑定1 - 自动把以英文逗号分隔的 ID 字符串绑定成 List<int>
直接贴代码了: CommaSeparatedModelBinder.cs using System; using System.Collections; using System.Collection ...
- day09(垃圾回收机制)
1,复习 文件处理 1.操作文件的三步骤 -- 打开文件:硬盘的空间被操作系统持有 | 文件对象被应用程序持续 -- 操作文件:读写操作 -- 释放文件:释放操作系统对硬盘空间的持有 2.基础的读写 ...