webApi文档好帮手-apidoc使用教程
来源:http://blog.csdn.net/xumin198908/article/details/41964159
在开发后台接口的过程中,我们肯定要提供一份api接口文档给终端app。
目前大多数的app的接口请求应该都是http+json的方式。 但是一直苦于做不出份漂亮的api文档,用word写,也太丑了。。怎么才能做出一份像腾讯、新浪微博等各种开放api平台那样漂亮的api文档呢?找了好久发现了今天的主角-apidoc。
官网地址:http://apidocjs.com
开放API已经成为当下主流平台的一个要素,特别对于社交、电商类的平台开放API更成为了竞争力的一种。开放API文档的完整性、可阅读性往往影响着接入方是否能顺利地、快速地接入到平台,一份好的、统一的API文档也是开放平台不可或缺的要素。
apidoc是通过源码中的注释来生成API文档,所以只要识别兼容现今大部分流行语言的注释方法便达到了兼容语言的效果。
有了它,我们只需要在写源码的时候顺手写上一些简单的注释,就可以生成出漂亮的文档了(当然,有同学会问文档不是先定义的吗?你把接口的源码声明好不就ok啦?或者你写点其他的语言也行啊。。 最简单的就是学习下javascript,只要学会怎么创建js文件,然后怎么声明function,给function添加注释即可,实在写不了源码,写一个简单的js文件,然后用apidoc生成一下就出文档了。
)。
它可以对API的各种版本等级进行对比。所以无论是前端开发人员还是你都可以追溯API版本的变化。
支持多种语言:C#,
Go, Dart, Java, JavaScript, PHP, TypeScript (all DocStyle capable languages),CoffeeScript,Erlang,Perl,Python,Ruby。
使用步骤:
1.安装nodejs。去http://www.nodejs.org/下载安装一个nodejs;
2.安装apidoc:命令行输入:npm install apidoc -g 貌似是在线安装的,稍等一下即可。
3. 准备一个目录myapp,下面放源码文件,源码文件中要按照apidoc的规范写好注释。具体规范参见官网,我这里就不翻译了。
例如我写java的源码:
/**
* 此接口不要去实现,仅作为输出api文档用的
* @author xumin
*
*/
@Deprecated
public interface ApiDoc {
/**
*
* @api {get} /company/list 获取公司信息
* @apiName 获取公司列表
* @apiGroup All
* @apiVersion 0.1.0
* @apiDescription 接口详细描述
*
* @apiParam {int} pageNum分页大小
*
* @apiSuccess {String} code 结果码
* @apiSuccess {String} msg 消息说明
* @apiSuccess {Object} data 分页数据封装
* @apiSuccess {int} data.count 总记录数
* @apiSuccess {Object[]} data.list 分页数据对象数组
* @apiSuccessExample Success-Response:
* HTTP/1.1 200 OK
* {
* code:0,
* msg:'success',
* data:{}
* }
*
* @apiError All 对应<code>id</code>的用户没找到 asdfasdf
* @apiErrorExample {json} Error-Response:
* HTTP/1.1 404 Not Found
* {
* code:1,
* msg:'user not found',
* }
*
* @param param
* @return
* @throws Exception
*/
void a();
}
4. 生成api文档。
apidoc -i myapp/ -o apidoc/ -t mytemplate/
myapp是当前工作目录下的源码目录
apidoc是用于存放生成出的文档文件的目录
mytemplate是自定义模板文件夹,刚开始用,可以不指定,后面有需要了再研究怎么自定义模板吧。
如果看到“success: Done.”说明生成成功 ,到 apidoc目录下打开index.html查看生成的文档.
大功告成!
webApi文档好帮手-apidoc使用教程的更多相关文章
- Taurus.MVC WebAPI 入门开发教程8:WebAPI文档与自动化测试。
系列目录 1.Taurus.MVC WebAPI 入门开发教程1:框架下载环境配置与运行. 2.Taurus.MVC WebAPI 入门开发教程2:添加控制器输出Hello World. 3.Tau ...
- ASP.NET WebApi 文档Swagger深度优化
本文版权归博客园和作者吴双本人共同所有,转载和爬虫请注明博客园蜗牛原文地址,cnblogs.com/tdws 写在前面 请原谅我这个标题党,写到了第100篇随笔,说是深度优化,其实也并没有什么深度 ...
- ASP.NET WebApi 文档Swagger中度优化
本文版权归博客园和作者吴双本人共同所有,转载和爬虫请注明原文地址:www.cnblogs.com/tdws 写在前面 在后台接口开发中,接口文档是必不可少的.在复杂的业务当中和多人对接的情况下,简 ...
- webapi文档
webapi文档描述-swagger 最近做的项目使用mvc+webapi,采取前后端分离的方式,后台提供API接口给前端开发人员.这个过程中遇到一个问题后台开发人员怎么提供接口说明文档给前端开发人员 ...
- Webapi文档描述-swagger优化
一.前言 最近做的项目使用WebApi,采取前后端分离的方式,后台提供API接口给前端开发人员.这个过程中遇到一个问题后台开发人员怎么提供接口说明文档给前端开发人员,最初打算使用word.Xmind思 ...
- Taurus.MVC 2.3 开源发布:增强属性Require验证功能,自带WebAPI文档生成功能
背景: 上周,把 Taurus.MVC 在 Linux (CentOS7) 上部署任务完成后. 也不知怎么的,忽然就想给框架集成一下WebAPI文档功能,所以就动手了. 以为一天能搞完,结果,好几天过 ...
- 使用Swagger 搭建高可读性ASP.Net WebApi文档
一.前言 在最近一个商城项目中,使用WebApi搭建API项目.但开发过程中,前后端工程师对于沟通接口的使用,是非常耗时的.之前也有用过Swagger构建WebApi文档,但是API文档的可读性并不高 ...
- WebApi 文档Swagger
NET WebApi 文档Swagger中度优化 本文版权归博客园和作者吴双本人共同所有,转载和爬虫请注明原文地址:www.cnblogs.com/tdws 写在前面 在后台接口开发中,接口文 ...
- PCB DotNetCore Swagger生成WebAPI文档配置方法
在.net framework框架下可以使用WebApiTestClientWebApi生成WebAPI接口文档与方便接口测试用,而在DotnetCore却没有找到这个工具了,baidu查找一下发现有 ...
随机推荐
- git不能提交jar的设置
项目目录下 文件:.gitignore ,里面设置: *.class # Package Files # *.jar *.war *.ear 删除*.jar
- Binary Tree Traversal
1.Preorder Traversal Given a binary tree, return the preorder traversal of its nodes' values. For ex ...
- Munin监控的安装与配置
Munin 是一款类似 RRD tool 的优秀系统监控工具,它能提供给你多方面的系统性能信息,例如 磁盘.网络.进程.系统和用户. Munin 的工作原理 Munin 以客户端-服务器模式运行,主服 ...
- Codeforces Round #133 (Div. 2)
A. Tiling with Hexagons 看成大三角形扣去3个小三角形. B. Forming Teams 由于每个点的度数不超过2,所以最后每个点要么在一条链上要么在一个环上. 在环上的话,每 ...
- K650D安装黑苹果
1.需要UEFI+GPT模式的win8或win10 2.关闭UEFI模式,进PE,分一个400M的分区,格式化为FAT16或EFI模式 3.制作clover模式的MAC安装U盘:链接: http:// ...
- Unity Shader播放序列帧动画
Shader "LordShader/AnimateSprite" { Properties { _MainTint (,,,) //颜色属性,可以在u3d inspector面板 ...
- liunx之:rpm包安装
使用rpm命令查询软件包: 1.查询系统中安装的所有RPM包 $ rpm -qa 查询当前linux系统中已经安装的软件包. 例:$ rpm -qa | grep -i x11 | head -3 察 ...
- Uinty3d 镜面反射代码
镜面反射代码 文件名MirrorReflection.cs 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 2 ...
- Android Studio导入GitHub上的项目常见问题(有例子)
前言:github对开发者而言无疑是个宝藏,但想利用它可不是件简单的事,用Android studio导入开源项目会遇到各种问题,今天我就以github上的一个图片轮播项目为例,解决导入过程中的常见问 ...
- System.Threading.ThreadAbortException: 正在中止线程。
在 System.Threading.ThreadAbortException 中第一次偶然出现的"mscorlib.dll"类型的异常 "System.Threadin ...