想找一个开源的API文档管理系统

luger
  • 708

想找一个开源的API文档管理系统,开发手机应用好多接口。各个接口需要说明参数、参数类型、method方法、返回值等 希望找一个开源的API管理系统来管理这些api,类似于各大网站open API这样展示。有没有这样的开源系统。谢谢各位,帮帮忙,找了好久了。再找不到准备抽时间写一个了。

回复
阅读 66k
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

  • 如果你没有自己的服务器,但又想使用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

Saas版 API 管理工具 http://apizza.cc/

做为一个十年左右的后台开发者,我以前是这样开发API的。

最早是开发api,然后用写html调试,然后再用doc写文档。这是一件非常2的事情。

后来,我找到了chrome插件来进行调试,再在oschina上的文档管理中进行管理文档。

但是我还是觉得慢,我理想中的开发api过程应该是:

调试完毕api接口后文档自动生成。我只需要填写简单的东西。不必再去copy字段名。
最好注释还可以自动联想。
看文档的人呢,比如测试和app开发者,可以直接在文档中输入参数,进行调试。

图片描述

自己实现一个

建议题主搭建一个 wiki 站点,推荐使用 MediaWiki - http://www.mediawiki.org/wiki/MediaWiki/
非常适合团队成员共同维护项目文档。顺便说两点:
1.MediaWiki 是免费的。
2.MediaWikiPHP 程序。
希望对题主有帮助。:)

EasyAPI磊大
  • 2
新手上路,请多包涵

我推荐一个EasyAPI www.easyapi.com
自己在用,确实不错。
功能在持续更新。

alicas
  • 1
新手上路,请多包涵

http://www.easyapi.com/啊,刚出来我就开始用了,我们团队现在前后台衔接都用EasyApi,比以前用word文档来好用太多了

ehsan
  • 2
新手上路,请多包涵

网上搜到的,也是感觉各种不好用,于是使用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

三毛
  • 3
新手上路,请多包涵

smart-api bu 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、如何使用

二、系统介绍

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文件:

db.mongo.host=192.168.254.18
db.mongo.port=27017
db.mongo.dbName=smartAPI

备注:

  • 1、Mongodb官网下载安装很简单;

  • 2、无需像Mysql那样的系统初始化Sql;

  • 3、dbName可按自己喜欢修改。

3.3、部署

备注:war包、jar包部署都可以.

四、核心操作指南

4.1、注册账号
  • 注册管理员账号如下,注册好后查收邮件,可见密码:
    这里写图片描述

4.2、创建分组
  • 使用注册的管理员账号登录系统,创建用户分组(团队 -> 新建小组):
    这里写图片描述

4.3、添加用户
  • 使用注册的管理员账号登录系统,创建用户分组(团队 -> 添加新成员):
    这里写图片描述

4.4、创建项目
  • 主页 -> 新建项目:
    这里写图片描述

4.5、创建模块
  • 主页 -> 新建项目 -> 选择指定项目 -> 添加新模块:
    这里写图片描述

4.6、用户权限
  • 团队 -> 点击知道用户头像:
    这里写图片描述

4.7、系统配置
  • 数据 -> 配置中心:
    这里写图片描述

4.8、发布接口

这里写图片描述

4.9、测试接口

这里写图片描述

五、技术交流

5.1、技术群:
  • QQ群:58221691117Smart 【2号群】

5.2、ISSUES:
  • smart-api托管在Github上,如有问题可在 ISSUES 上提问

六、一起Smart的客户

  • 人脉通

  • 滴滴找布

  • 好汽配

  • 美业帮

  • 人人都是产品经理

还在用Word管理接口文档吗?还在拼接URL测试吗?是时候和Word/Excel说再见了!让我们一起SMART~

http://www.179smart.com/smart-api/(账号:admin@17smart.com;密码:654321)

您也想一起smart吗?烦请此处告知。

马云
  • 3
新手上路,请多包涵

楼上的这是复制粘贴呢,我给你推荐一个吧,能翻墙的话用apiee,不能翻墙啦就用QuickAPI。直接给你传送门,自己体验下[http://www.qkapi.com][1]

宣传栏