作为后台根据需求文档开发完成接口后,交付给前台(angular vue等)做开发,不可能让前台每个接口调用都去查看你的后台代码一点点查找。前台开发若不懂你的代码呢?让他一个接口一个接口去问你怎么调用,需要传递那些参数?调用方法?这样的话,微信公众号之类的二次开发去找谁要接口调用,这显然是不切合实际的。所以有一个后台接口调用的展示文档,对前后端分离的开发来说,非常实用。之前在.net 开发中使用过swagger作为后台接口API文档的生成方式。感觉很简单,一步到位。下面介绍一下在nodejs 中采用apidoc来生成Restful API 的接口文档。

  1.首先APIDOC的官网,关于配置等内容可以参看说明

  http://apidocjs.com

  2.具体操作说明:

  1)安装node环境(这个不多说),安装apidoc

npm install apidoc -g

  2)打开你的项目,在根目录创建一个配置文件apidoc.json,里边的内容可参考我的配置:

{
"name": "cms-server", // 你的项目名称,可以随便写
"version": "1.0.0", // 版本,书写没要求
"description": "cms-server项目API文档", // API文档的描述
"title": "cms-server API", // API文档的标题
"url" : "http://localhost:3001/v1", // 项目接口的地址,如我的user接口:localhost:3001/v1/user
"sampleUrl": "http://localhost:3001/v1",
"forceLanguage":"zh-cn",
"template": {
"withCompare": true,
"withGenerator": true
} }

  3)新建一个文件夹,用于存放你的APIDOC生成的文件,然后在项目的启动文件,如app.js添加下边一句话

app.use('/apidoc存放的位置',express.static('apidoc存放的位置'));
// 配置实例:若我放在public/apidoc,则对应配置为
app.use('/public',express.static('public'));
// 那么我访问的地址应该是:
// localhost:3001/public/apidoc,他就会自动运行apidoc下生成的apidoc/index.html

  4)在对应的接口上添加注释,可参考下边的配置 

/**
* 获得某个用户
* @api {GET} /api/users/:id 获得某个用户
* @apiDescription 根据ID获得某个用户
* @apiName getUser
* @apiParam (path参数) {Number} id
* @apiSampleRequest /api/users/5a45cefd080d7c39a036ca55
* @apiGroup User
* @apiVersion 1.0.0
*/

  5) 生成API文档

//apidoc -i '扫描接口的文件夹' -o '生成apidoc的位置'
//如:
apidoc -i app/api -o public/apidoc

  6)启动项目,访问http:localhost:3001/public/apidoc,就可以看到生成的api文档。

参考生成的api文档:

  

Node与apidoc的邂逅——NodeJS Restful 的API文档生成的更多相关文章

  1. [aspnetcore.apidoc]一款很不错的api文档生成工具

    AspNetCore.ApiDoc 简单徐速一下为什么选用了aspnetcore.apidoc 而没有选用swagger 最初我们也有在试用swagger,但总是有些感觉,感觉有点不满意,就但从api ...

  2. 【转载】Java Restful API 文档生成工具 smart-doc

    谁说生成api文档就必须要定义注解? 谁说生成接口请求和返回示例必须要在线? 用代码去探路,不断尝试更多文档交付的可能性. 如果代码有生命,为什么不换种方式和它对话! 一.背景 没有背景.就自己做自己 ...

  3. 使用apidoc 生成Restful web Api文档

    在项目开发过程中,总会牵扯到接口文档的设计与编写,之前使用的都是office工具,写一个文档,总也是不够漂亮和直观.好在git上的开源大神提供了生成文档的工具,so来介绍一下! 该工具是Nodejs的 ...

  4. 使用apidoc 生成Restful web Api文档——新手问题与解决方法

    使用apidoc工具来给项目做接口文档,不仅有合理的源码注释,还可以生成对应的文档.是给源码写备注的一个极佳实践. 工具名称:apiDoc Git地址:https://github.com/apido ...

  5. SpringBoot入门教程(二十)Swagger2-自动生成RESTful规范API文档

    Swagger2 方式,一定会让你有不一样的开发体验:功能丰富 :支持多种注解,自动生成接口文档界面,支持在界面测试API接口功能:及时更新 :开发过程中花一点写注释的时间,就可以及时的更新API文档 ...

  6. apidoc 生成Restful web Api文档

    在服务器项目开发过程中,总会牵扯到接口文档的设计与编写,之前使用的都是office写一个文档,不够直观.下面介绍一种工具生成Apidoc.,该工具是Nodejs的模块,请务必在使用前安装好nodejs ...

  7. node.js api文档生成

    ApiDoc官网地址为:http://apidocjs.com/在Java中有Swagger及其升级版的Swagger2+Springfox自动生成接口管理文档.而在Node.js中则可以利用ApiD ...

  8. vs开发nodejs api文档生成神器-apidoc

    直接生成文档的神器 apidoc 1 win+R 输入 cmd 回车 然后进入 nodejs 项目目录 例如 D:\NodeTest\newApp1 2  用npm安装 apidoc 直接输入 npm ...

  9. nodeJs 模块cookie-session api文档中文翻译,偶自己翻译的

    原文英文文档链接点击 说明 简单的 基于cookie的 session中间件 安装 它是一个可以用npm注册的node模块,可以通过npm install命令安装 npm install cookie ...

随机推荐

  1. java socket 模拟im 即时通讯

    自己想了一下怎么实现,就写了,没有深究是否合理.更多处理没有写下去,例如收件人不在线,应该保存在数据库,等下一次连接的时候刷新map,再把数据发送过去,图片发送也没有做,也没有用json格式 sock ...

  2. Python接口自动化测试 HTTP协议

    一.HTTP协议简述 二.URL 三.请求 四.响应 五.消息报头 六.常见问题

  3. python介绍篇

    二进制编码ASSIC 每一个字符统一都需要8个bit来存储 计算机容量 1位 = 1bit 8bit = 1byte = 1字节 1024bytes = 1kbytes =1KB 1024个字符,小文 ...

  4. mysql常用基础操作语法(九)~~外连接查询【命令行模式】

    1.左外连接left outer join或者left jion,outer可以省略不写,下边的右连接和全连接也一样: 左外连接的意思是,以left join左边的表中的数据为基准,即左边的表中有的必 ...

  5. R语言︱机器学习模型评价指标+(转)模型出错的四大原因及如何纠错

    笔者寄语:机器学习中交叉验证的方式是主要的模型评价方法,交叉验证中用到了哪些指标呢? 交叉验证将数据分为训练数据集.测试数据集,然后通过训练数据集进行训练,通过测试数据集进行测试,验证集进行验证. 模 ...

  6. 利用squid 搭建简单的透明代理服务器

    环境介绍 虚拟主机1: ip eth0192.168.0.100/24 eth1: 200.168.0.100/24 虚拟主机2(模拟外网) 200.168.0.109/24 (运行web serve ...

  7. freemarker自定义标签报错(一)

    freemarker自定义标签 1.错误描述 freemarker.core.ParseException: Token manager error: freemarker.core.TokenMgr ...

  8. Visual Studio 2012 和 SVN 结合实现版本控制 AnkhSvn

    第一步: 安装VisualSVN Server Manager. 下载地址:http://www.onlinedown.net/soft/89603.htm 第二步: 安装TortoiseSVN.注意 ...

  9. Asp.Net WebApi 调试利器“单元测试”

    当我们编辑好一个WebApi应用程序后,需要对该Api接口进行调试,传统的调试办法是在方法内设置断点,然后用PostMan等http工具模拟访问进行查看WebAPI的运行情况,但这种除了效率较低还进行 ...

  10. html中的div span和frameset框架标签

    Div和span 1.      div独占一层,由div九不允许有别的. 2.      span标签不是独自占用一行,span一般用来设置字体. 框架标签: 什么是框架标签,就是把一个页面分成很多 ...