想找一个开源的API文档管理系统
想找一个开源的API文档管理系统,开发手机应用好多接口。各个接口需要说明参数、参数类型、method方法、返回值等 希望找一个开源的API管理系统来管理这些api,类似于各大网站open API这样展示。有没有这样的开源系统。谢谢各位,帮帮忙,找了好久了。再找不到准备抽时间写一个了。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(18)
ShowDoc是什么
每当接手一个他人开发好的模块或者项目,看着那些没有写注释的代码,我们都无比抓狂。文档呢?!文档呢?!Show me the doc !!
程序员都很希望别人能写技术文档,而自己却很不希望要写文档。因为写文档需要花大量的时间去处理格式排版,想着新建的word文档放在哪个目录等各种非技术细节。
word文档零零散散地放在团队不同人那里,需要文档的人基本靠吼,吼一声然后上qq或者邮箱接收对方丢过来的文档。这种沟通方式当然可以,只是效率不高。
ShowDoc就是一个非常适合IT团队的在线文档分享工具,它可以加快团队之间沟通的效率。
它可以用来做什么
API文档( 查看Demo)
随着移动互联网的发展,BaaS(后端即服务)越来越流行。服务端提供API,APP端或者网页前端便可方便调用数据。用ShowDoc可以非常方便快速地编写出美观的API文档。
数据字典( 查看Demo)
一份好的数据字典可以很方便地向别人说明你的数据库结构,如各个字段的释义等。
说明文档 ( 查看Demo)
你完全可以使用showdoc来编写一些工具的说明书,也可以编写一些技术规范说明文档以供团队查阅
它都有些什么功能
分享与导出
响应式网页设计,可将项目文档分享到电脑或移动设备查看。同时也可以将项目导出成word文件,以便离线浏览。
权限管理
公开项目与私密项目
ShowDoc上的项目有公开项目和私密项目两种。公开项目可供任何登录与非登录的用户访问,而私密项目则需要输入密码验证访问。密码由项目创建者设置。
项目转让
项目创建者可以自由地把项目转让给网站的其他用户。
项目成员
你可以很方便地为ShowDoc的项目添加、删除项目成员。项目成员可以对项目进行编辑,但不可转让或删除项目(只有项目创建者才有权限)
编辑功能
markdown编辑
ShowDoc采用markdown编辑器,无论是编辑还是阅读体验都极佳很棒。如果你不了解Markdown,请在搜索引擎搜索"认识与入门 Markdown"
模板插入
在ShowDoc的编辑页面,点击编辑器上方的按钮可方便地插入API接口模板和数据字典模板。插入模板后,剩下的就是改动数据了,省去了很多编辑的力气。
历史版本
ShowDoc为页面提供历史版本功能,你可以方便地把页面恢复到之前的版本。
部署到自己的服务器
ShowDoc部署手册请参考:http://blog.star7th.com/2016/05/2007.html
使用在线的ShowDoc
如果你没有自己的服务器,但又想使用ShowDoc作为分档分享工具,你可以使用在线的ShowDoc http://www.showdoc.cc
版权
ShowDoc遵循Apache2开源协议发布,并提供免费使用。
版权所有Copyright © star7th http://blog.star7th.com All rights reserved.
什么是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/58... 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
类似这种 http://swagger.wordnik.com/ ?
https://github.com/wordnik/swagger-codegen
如果是用nodejs 的话,我倒是快实现了一个基于这个标准注解的生成器.
如果你是写Node.js 的话
可以尝试用这个
https://github.com/youxiachai/dox-swagger-cli
Saas版 API 管理工具 http://apizza.cc/
做为一个十年左右的后台开发者,我以前是这样开发API的。
最早是开发api,然后用写html调试,然后再用doc写文档。这是一件非常2的事情。
后来,我找到了chrome插件来进行调试,再在oschina上的文档管理中进行管理文档。
但是我还是觉得慢,我理想中的开发api过程应该是:
调试完毕api接口后文档自动生成。我只需要填写简单的东西。不必再去copy字段名。
最好注释还可以自动联想。
看文档的人呢,比如测试和app开发者,可以直接在文档中输入参数,进行调试。
● pod2man
自己实现一个
建议题主搭建一个
wiki
站点,推荐使用MediaWiki
- http://www.mediawiki.org/wiki/MediaWiki/非常适合团队成员共同维护项目文档。顺便说两点:
1.
MediaWiki
是免费的。2.
MediaWiki
是PHP
程序。希望对题主有帮助。:)
https://github.com/gongwalker/ApiManager.git
如你所愿
https://github.com/ares333/php-doc-system
我推荐一个EasyAPI www.easyapi.com
自己在用,确实不错。
功能在持续更新。
用http://www.easyapi.com/啊,刚出来我就开始用了,我们团队现在前后台衔接都用EasyApi,比以前用word文档来好用太多了
CrapApi:一个由anjularjs+bootstrap+springMVC搭建的免费开源的API接口、文档管理系统(应用接口管理系统)
系统特点:简单、极致、开源、前沿
主要功能:接口管理、接口调试、文档管理、数据字典管理....
演示地址:http://api.crap.cn/ 或 http://api2.crap.cn/
GitHub开源地址:https://github.com/EhsanTang/...
码云开源地址:https://git.oschina.net/CrapA...
演示地址:http://api.crap.cn/ 或 http://api2.crap.cn/
网上搜到的,也是感觉各种不好用,于是使用yii框架自己开发了一个。
YDC : Yii Document Center
使用 Yii2 及 MarkDown 编辑器 editor.md 开发的一款建议项目API文档管理工具。
简单实用,还可以多人协作,基于RBAC实现的权限控制,免费开源。
有兴趣的话,可以试用看看 :)
实例网站: ydc.jeen.wang
GitHub: JeanWolf/yii-doc-center
MinDoc是一款针对IT团队开发的简单好用的文档管理系统。 可以用来储存日常接口文档,数据库字典,手册说明等文档。内置项目管理,用户管理,权限管理等功能,能够满足大部分中小团队的文档管理需求。
MinDoc 是基于Golang语言开发,跨平台支持,支持多人协作,容易部署,同时支持MySQL和sqlite两种数据库。
GitHub地址: https://github.com/lifei6671/...
官网: https://www.iminho.me
smart-api 17Smart,一起SMART
With this system, improve the efficiency of team members to communicate, reduce API maintenance costs, and make changes in the API has a historical accumulation of precipitation. Through the API score to identify team members in a timely manner to help improve performance.
一、平台简介
1.1、概述
Smart-api是一个极简API管理平台,提供API的"发布&管理"、"数据字典"、"即时沟通"、"文档"、"Mock"和"测试"等功能。
借助此系统,可以避免更多的重复劳动,提高沟通效率、减少API维护成本,且使API更新变动有所历史积累沉淀。通过API多维匿名评分及时发现团队成员问题,帮助其提高绩效。
1.2、特性
1、极简:一分钟上手;
2、隔离:成员分组、API以项目为维度进行拆分隔离;
3、高效:半自动化生成API文档(如愿意在项目引入17smart注解可全自动化);
4、多版本:API可多版本维,变更历史一目了然;
5、即时沟通:实时通知、在线沟通;
6、在线测试:可自行配置、选择环境测试API(如,测试环境、Mock测试);
7、即时更新:数据字典随数据库表结构实时同步更新展现;
1.3、如何使用
1、直接访问由作者维护的http://www.179smart.com/smart-api/(账号:admin@17smart.com;密码:654321)
2、自己本地部署(很简单,详见下面“快速部署”)
二、系统介绍
2.1、功能图
2.2、流程图
2.3、架构图
2.4、主要技术
1、前端:Jsp + Velocity + jQuery
2、后端:Java7 + Springmvc + Websocket + Json
3、数据库:Mongodb2.4+
4、部署:Tomcat7+ / Springboot
5、开发:Maven + Git
三、快速部署
3.1、下载源码
以MyEclipse为例:Import -> Git -> Clone URI -> Next...成功导入工程结构如下:
3.2、配置Mongodb连接
修改src/main/resources目录下系统配置sysConfig.properties文件:
备注:
1、Mongodb官网下载安装很简单;
2、无需像Mysql那样的系统初始化Sql;
3、dbName可按自己喜欢修改。
3.3、部署
将应用"smart-api"部署在容器如Tomcat下之后,启动后访问如http://192.168.254.50:7070/sm...即可进入以下界面:
备注:war包、jar包部署都可以.
四、核心操作指南
4.1、注册账号
注册管理员账号如下,注册好后查收邮件,可见密码:
4.2、创建分组
使用注册的管理员账号登录系统,创建用户分组(团队 -> 新建小组):
4.3、添加用户
使用注册的管理员账号登录系统,创建用户分组(团队 -> 添加新成员):
4.4、创建项目
主页 -> 新建项目:
4.5、创建模块
主页 -> 新建项目 -> 选择指定项目 -> 添加新模块:
4.6、用户权限
团队 -> 点击知道用户头像:
4.7、系统配置
数据 -> 配置中心:
4.8、发布接口
4.9、测试接口
五、技术交流
5.1、技术群:
QQ群:582216911
5.2、ISSUES:
smart-api托管在Github上,如有问题可在 ISSUES 上提问
六、一起Smart的客户
人脉通
滴滴找布
好汽配
美业帮
人人都是产品经理
还在用Word管理接口文档吗?还在拼接URL测试吗?是时候和Word/Excel说再见了!让我们一起SMART~
http://www.179smart.com/smart-api/(账号:admin@17smart.com;密码:654321)
您也想一起smart吗?烦请此处告知。
楼上的这是复制粘贴呢,我给你推荐一个吧,能翻墙的话用apiee,不能翻墙啦就用QuickAPI。直接给你传送门,自己体验下[http://www.qkapi.com
国外的话Swagger(Swagger – The World's Most Popular Framework for APIs.),
目前国内做得最好的是EOAPI(EOAPI - 业内领先的接口管理平台)。
EOAPI一直比较低调,相对于其他做噱头的产品,它就更加专注用户体验和功能性的提升,因此我也比较喜欢它。
EOAPI有线上版本和开源版本,基于PHP。
附上EOAPI的一些简介(来自EOAPI的官网):
接口管理
无论你是个人开发者、创业团队还是成熟企业,eoapi将满足你的所有接口管理需求。
不再需要为每个项目搭建独立的接口管理平台和编写离线的接口文档,一切的项目接口管理都将在云端进行。
项目协作
传统的word、excel以及自建wiki等文档工具,均无法摆脱编写繁琐、阅读困难、维护麻烦等缺点。
eoapi能够让你注册后便开始协作,其规范化的文档、清晰的分类以及友好的阅读界面,让文档更新和协作不再痛苦。
在线测试
传统如DHC以及postman等测试工具已无法满足接口管理工作,并且无法提供性能测试报告。
eoapi则将代替传统测试工具,无须翻墙和安装,只需网页轻轻一点即可得知完整的接口测试信息。
EOAPI个人开源版本(EOAPI - 业内领先的接口管理平台):
推荐一款简单易用的项目接口管理工具,http://helloworld.net.cn,支持多人协作和导出接口文档。