求推荐一个开源的 API 文档管理系统

2014-03-31 16:15:48 +08:00
 f0101
目前想为项目写一个API文档,在线阅读的。想找一个好用点的API文档管理系统。能实现像微博API、淘宝开放平台这种效果的:

http://open.weibo.com/wiki/2/statuses/querymid
http://wiki.open.t.qq.com/index.php/%E5%B9%B3%E5%8F%B0%E4%BB%8B%E7%BB%8D
http://open.taobao.com/doc/detail.htm?id=101710

试用了几个感觉都不理想。求推荐。
53134 次点击
所在节点    程序员
34 条回复
Eshan
2016-08-28 18:27:58 +08:00
CrapApi :一个由 anjularjs+bootstrap+springMVC 搭建的免费开源的 API 接口、文档管理系统(应用接口管理系统)

刚开源不久, github 上 fork 已经超过 100 了,用起来感觉非常不错

演示项目: http://api.crap.cn

主要功能:
1.项目管理、模块管理、接口管理、接口版本管理、接口拷贝、接口文档 pdf 下载、模块加密访问、接口在线调试....

2.数据字典管理、数据字典加密访问...

3.多管理员、多权限、多角色管理,精准控制每个接口的删改权限

4.自定义菜单、自定义网站样式,满足你的各种需求

5.文章管理:说明文档、需求文档、技术实现文档,想怎么分类 CrapApi 都支持

6.文档留言、错误码管理、接口排序...

7.DOC 、 PDF 、 TEXT 、 EXCEL 等资源管理,支持版本号控制,文档内容检索,支持无限级目录设置,支持目录密码访问

8. 操作日志记录、根据日志恢复数据
zhishizhanghao21
2016-09-13 09:37:48 +08:00
多年后台开发,也是最早用的 word ,后来 html 记录。
不过用起来都不是很爽,市面上其他的开源接口文档管理工具呢,感觉是给自己用的,而不是给前端开发人员用的。
然后有发现了一个是阿里的 rap 。用了一段时间,挺好的,但是没有在线测试功能。
然后自己就开发了一个管理工具。
小幺鸡接口文档管理工具。
支持 http 、 websocket 在线测试。
支持 json 、 txt 、 xml 、二进制等数据类型。
http://www.xiaoyaoji.com.cn/
可以点进去看看效果怎么样。
配张图给大家看看
https://segmentfault.com/img/bVCzZs/view
zhishizhanghao21
2016-09-13 09:38:13 +08:00
@wujunze 地址已经失效了。刚看见换成这个了: http://git.oschina.net/zhoujingjie/apiManager
wujunze
2016-09-13 15:53:31 +08:00
@zhishizhanghao21 3Q 你这个后台是 java 实现的 我想找个后台是 php 的 我对 php 比较熟 修改也比较方便
wujunze
2016-09-13 15:55:53 +08:00
@lygmqkl 网站 404 了
wujunze
2016-09-13 15:56:56 +08:00
@funing http://apizza.cc/ 代码不开源 重要的接口文档不敢放别人服务器啊
vus520
2016-10-03 20:59:16 +08:00
apiManager 和 rap 不错,带管理、测试、文档
daux 只能算文档功能
funing
2016-10-20 10:00:20 +08:00
@wujunze 现在貌似可以离线导出 html 文档了,就当一个文档编辑器用吧。
ZiLong
2016-10-29 22:44:39 +08:00
头疼
zhudelin
2017-01-22 08:10:11 +08:00
推荐一个 http://helloworld.net.cn 可以视化操作,可导出
loveskyforever
2017-05-12 12:09:48 +08:00
什么是 SBDoc ?

SBDoc 是一个商业化开源产品,完全免费。无论你是前端工程师,还是后端工程师,接口永远都是两者交互的桥梁,所以 SBDoc 专为中小型团队量身打造,旨在解决接口的管理,测试与数据生成,实现真正的一体化解决方案。

SBDoc 有哪些功能

1.团队协作,可以对不同的成员分配权限,有两种权限,管理员:可以增删改查项目和接口信息。观察者:可以查看,测试,mock 接口数据,但是不能修改接口和项目的信息。

2.编写接口文档,摒弃了传统的纯文本编写方式,采用可视化编写,随意拖拽,可以添加任意层次信息,支持 JSON 入参格式,并且实时预览文档编写结果。

3.对接口进行测试,对于外网测试,没有跨域,后台采用的是 proxy 代理,对于内网,需要在本地安装 node 环境,然后下载系统内提示的 net.js 文档,在本地用 node 运行即可。net.js 就是一个 http,https 的透明代理。

4.自动生成接口,很多时候,我们的后端开发人员都是先将接口开发好,再去写接口文档的,或者是接口有比较大的改动,接口文档也要改动很多。对于这种情况,可以在测试接口后对接口的文档信息进行一键自动生成,接口的所有入参,出参,http 头都会自动生成到文档,我们要做的就是简单的修修改改就可以啦

5.可以对接口进行自动化测试,采用原生的 js 编写少量代码便可以对接口进行高效智能的测试,业内独创 web 端自动化测试技术!

6.对数据进行无缝 mock,在大部分情况下,前端的开发人员都是要等待后端的开发者将接口开发调试好才能进行下一步开发,这样会耗费大量的时间精力,如果要本地生成数据那么成本也会比较高,所以 SBDoc 有独特的无缝 mock 技术,只需要在本地用 node 运行 net.js ,加上 mock server 地址(每个项目都会自动生成自己的 mock Server 地址)和你需要请求的真实地址,当您的接口文档的状态为开发完成的时候,net.js 不会去请求 mock server 地址而去请求真实地址(举例:node net.js http://sbdoc.cn:10000/mock/586b17545fa2d311c0915021 http://localhost:8081) ,然后将您开发工程下的根 url 替换为 localhost:36742 即可开启您的 Mock 之旅!

产品文档

http://sbdoc.cn
SBDoc 开源

本次开源的是 SBDoc 的内网版本,可以直接部署到内网中,和线上版本在功能上是完全一样的,区别在于:

1.线上的系统用了前端和后端两套工程,并且用 nginx 做了负载均衡,redis 做缓存,而内网版本合并为一个工程,直接用 node 做静态服务器,取消了缓存,这样对于很多中小型团队来说很轻便而且也够用了。

2.线上系统在安全性方面做了不少加固处理,而内网版本默认内网是安全的,也为了提高 node 作为服务器的效率,取消了很多加固处理,如果用户有需要可以自行添加。

如何部署

1.首先本地要安装 node 环境,推荐 6.10.0 版本(下载页面)

2.安装 mongodb(下载页面),可使用 robomongo 来作为 mongodb 的客户端工具(下载页面),启动 mongodb 后(如何启动),用 robomongo 来连接,新建一个 database 作为 SBDoc 的数据库(名称随意)

3.将 SBDoc 的源码 down 到本地,进入根目录,修改 config.json

{
"db":"mongodb://localhost:27017/SBDoc", //这里为你的 mongodb 服务器的地址和库的名称
"filePath":"/Users/Shared/SBDoc", //这里作为 SBDoc 文件上传的路径
"imgPath":"/Users/Shared/SBDoc/img", //这里是 SBDoc 图片上传的路径(是 SBDoc 文件上传的路径的直接子目录) "tempPath":"/Users/Shared/SBDoc/temp", //这里 SBDoc 临时文件上传的路径(是 SBDoc 文件上传的路径的直接子目录) "port":10000, //SBDoc 启动的端口号
"version":"1.0.0" //SBDoc 的版本号(无需修改)
}

4.在命令行下运行 node SBDoc 的根目录 /SBDoc/bin/www 即可启动 SBDoc (如果是 windows 环境下,请修改目录分隔符),在浏览器里输入 localhost:SBDoc 启动的端口号,出现首页表示部署成功。

问题反馈

如果你有任何问题和建议,请在 issues 里面指出,每个月的 1 号和 15 号会发布功能迭代版本,根据 bug 情况不定期的会发布 bug 迭代版本。如果你想加入开源的大家庭,欢迎加入 qq 群:611940610
vocalman
2017-11-23 17:45:06 +08:00
几年的开发,接口管理工具市面上我也用过很多了,有些的确如同楼主说的不好用
后来找到 eoLinker,我觉得目前最好用的,目前公司团队都在用,推荐给楼主。
eoLinker:[https://www.eolinker.com]( https://s.growingio.com/gNKZYz),必须说的是 eoLinker 开源免费的。
下面我复制一些产品的开源项目和链接:
开源支持:[https://www.eolinker.com/#/os/download]( https://www.eolinker.com/#/os/download)
Github:[https://github.com/eolinker]( https://github.com/eolinker)
码云:[https://gitee.com/eoLinker-API-Management]( https://gitee.com/eoLinker-API-Management)
Coding:[https://coding.net/u/eolinker/project]( https://coding.net/u/eolinker/project)
Blog:[http://blog.eolinker.com]( http://blog.eolinker.com
视频教程:[http://blog.eolinker.com/#/course/]( http://blog.eolinker.com/#/course/)
推荐你去用一下。
balabalaguguji
2018-12-27 14:22:12 +08:00
国内外的我也都用过,推荐你试下: https://easydoc.xyz
andychen1
2020-09-04 15:42:53 +08:00
那我推荐 api-mom

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/106648

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX