一、安装node.js环境

感谢阿里云,下载的链接http://npm.taobao.org/mirrors/node/latest-v6.x/

二、安装apidoc

npm install apidoc -g

三、背景准备

1.以Java为例,新建一个java项目,假设名为test。

2.新建一个文本文件,命名apidoc.json,放置在test项目src根目录下。
3.新建一个Java文件,假设名为Test.java。

四、编写apidoc.json

这是在自动生成文档时的基础设置信息。

{
"name": "apidoc-example",
"version": "0.3.0",
"description": "apiDoc example project",
"title": "Custom apiDoc browser title",
"url" : "https://api.github.com/v1",
"header": {
"title": "My own header title",
"filename": "header.md"
},
"footer": {
"title": "My own footer title",
"filename": "footer.md"
},
"order": [
"GetUser",
"PostUser"
],
"template": {
"withCompare": true,
"withGenerator": true
}
}
五、一个GET请求的示例

打开Test.java文件,在文件内写入以下注释。

/**
* @api {get} /pokka/:id pokka
* @apiName 获取指定Pokka
* @apiVersion 0.1.0
* @apiGroup Pokka
* @apiDescription 这是描述信息,可以有多行。
* @apiExample {curl} 接口示例:
* curl -i http://localhost/pokka/4711
* @apiHeader {String} access-key 请求头必须携带字段access-key
* @apiHeaderExample {json} 头部示例:
* {
* "access-key": "按照约定加密方式产生的token=="
* }
*
* @apiSuccess (200) {String} firstname 姓氏
* @apiSuccess (200) {String} lastname 名称
*
* @apiSuccessExample {json} 成功的响应:
* HTTP/1.1 200 OK
* {
* "firstname": "John",
* "lastname": "Doe"
* }
*
*/

这些注释相对简单,能直观的看出来定义了

1. 接口格式(必选)
2. 接口名称
3. 接口版本
4. 接口所属组(必选)
5. 接口描述信息
6. 接口格式示例
7. 接口头定义
8. 接口头示例
9. 接口成功响应定义

六、接口成功响应示例

实际情况中,还会遇到携带参数的POST请求、错误的响应等等更多API描述需求。

更多的学习api地址:http://apidocjs.com/#params

七、最终的执行

命令格式为apidoc -i 项目实际目录 -o 希望输出到的目录

例如apidoc -i D:\workspace\test -o D:\api-output

八、得到的结果

如果没有报错的话,进入D:\api-output,双击index.html就可以看到漂亮的接口文档了。

例如此例得到的描述页面。

REST开放接口生成文档工具之apidoc的更多相关文章

  1. apipost 调试微信公众号 小程序,秒生成文档工具

    1.将已经鉴权的公众号,小程序接口的 header头信息复制进来 2.设置文档展示字段

  2. 如何快速方便的生成好看的接口文档(apipost生成文档)

    一键生成文档 我们在"2分钟玩转APIPOST"一讲中,简单介绍了如何生成并分享接口文档: 点击分享文档 复制并打开文档地址就可以看到了完整的接口文档. 本节课主要是讲解一些需要注 ...

  3. 配置WCF同时支持WSDL和REST,swaggerwcf生成文档

    配置WCF同时支持WSDL和REST,SwaggerWCF生成文档 VS创建一个WCF工程,通过NuGet添加SwaggerWcf 创建完成后通过 程序包管理控制台 pm>Install-Pac ...

  4. JavaScript 定义类的最佳写法——完整支持面向对象(封装、继承、多态),兼容所有浏览器,支持用JSDuck生成文档

    作者: zyl910 [TOC] 一.缘由 由于在ES6之前,JavaScript中没有定义类(class)语法.导致大家用各种五花八门的办法来定义类,代码风格不统一.而且对于模拟面向对象的三大支柱& ...

  5. eoLinker 新功能发布,增加了识别代码注释自动生成文档功能

    产品地址:https://www.eolinker.com开源代码:https://www.eolinker.com/#/os/download在线生成代码注释工具:http://tool.eolin ...

  6. linux c/c++ 代码使用 doxygen 自动生成文档

    www.doxygen.org 的使用非常方便,下面分成2步介绍一下 1. 注释风格,需要在c/c++代码中按照下面的风格添加注释,基本上还是很顺手的 C++的注释风格 主要使用下面这种样式:即在注释 ...

  7. WebApi实现验证授权Token,WebApi生成文档等 - CSDN博客

    原文:WebApi实现验证授权Token,WebApi生成文档等 - CSDN博客 using System; using System.Linq; using System.Web; using S ...

  8. Java非侵入式API接口即文档工具apigcc

    一个非侵入的api编译.收集.Rest文档生成工具.工具通过分析代码和注释,获取文档信息,生成RestDoc文档 前言 程序员一直以来都有一个烦恼,只想写代码,不想写文档.代码就表达了我的思想和灵魂. ...

  9. SpringBoot 集成Swagger2自动生成文档和导出成静态文件

    目录 1. 简介 2. 集成Swagger2 2.1 导入Swagger库 2.2 配置Swagger基本信息 2.3 使用Swagger注解 2.4 文档效果图 3. 常用注解介绍 4. Swagg ...

随机推荐

  1. hdu 2147 kiki's game, 入门基础博弈

    博弈的一些概念: 必败点(P点) : 前一个选手(Previous player)将取胜的位置称为必败点. 必胜点(N点) : 下一个选手(Next player)将取胜的位置称为必胜点. 必败(必胜 ...

  2. Lower dc/dc-converter ripple by using optimum capacitor hookup

    Low-ripple-voltage positive-to-negative dc/dc converters find use in many of today's high- frequency ...

  3. Linq 分组(group by)求和(sum)并且按照分隔符(join)分割列数据

    转载:http://www.cnblogs.com/zq281660880/archive/2012/09/26/2704836.html 今天在使用linq处理一下需求时碰到一点小问题,特此记录. ...

  4. react+redux+generation-modation脚手架搭建一个todolist

    TodoList 1. 编写actions.js 2. 分析state 试着拆分成多个reducer 3. 了解store 4. 了解redux数据流生命周期 5. 分析容器组件和展示组件 搞清楚,数 ...

  5. Windows 配置 Apache Python CGI

    提示:安装Apache可参考 https://jingyan.baidu.com/article/0eb457e53c019f03f1a905c7.html 1.  打开URL: https://ww ...

  6. 【java】【mysql】存储微信表情emoji表情

    java.sql.SQLException: Incorrect string value: '\xF0\x9F\x92\x94' for colum n 'name' at row 1 at com ...

  7. javascript转换日期字符串为Date对象

    把一个日期字符串如“2007-2-28 10:18:30”转换为Date对象: 1: var strArray=str.split(" "); var strDate=strArr ...

  8. Andorid之Annotation框架初使用(三)

    线程使用: @Background这个是使用了cached thread pool executor , 阻止开启过多的线程 可以为@Background指定一个id,用于随时终止线程的操作(Back ...

  9. 排查Hive报错:org.apache.hadoop.hive.serde2.SerDeException: java.io.IOException: Start of Array expected

    CREATE TABLE json_nested_test ( count string, usage string, pkg map<string,string>, languages ...

  10. 缓存jQuery对象来提高性能

    jQuery使元素的选择变得异常简单,这也是它快速流行起来的一大原因,如果你看刚刚开始使用jQuery朋友写的代码时,会发现很多数人写的代码都在滥用jQuery选择器.   如果你发现同一元素被查找多 ...