28

前后端都分离了,该搞个好用的API管理系统了!

 4 years ago
source link: https://www.tuicool.com/articles/Vz6Rnu3
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

jauQN37.jpg!web

阿尔伯塔日出,加拿大 (© Ambre Haller)

 为啥需要API管理系统!  

互联网服务发展至今,作为开发者阵营的我们,已经用实践证明了 前后端分离 开发模式正在逐渐成为越来越多互联网公司构建服务和应用的方式。

前后端分离优势多多,其中一个很重要的优势是:对于后台服务(系统)来讲, 只需提供一套统一的API接口 ,可被多个客户端所 复用 ,分工和协作被细化,大大提高了效率。

与此同时带来的一些副作用便是:

  • 接口文档管理混乱。之前很多公司管理API接口,有用Wiki的,有Word文档的,有Html的,经常遇到问题是接口因变了,比如增加参数,参数名变了,参数被删除了等都没有及时更新文档的情况

  • 接口测试没有保障。毕竟前端开发依赖后端接口,如果前后端开发不同步,接口及时测试成了问题,因此需要随时提供一套可用的API接口数据测试服务。

  • 资源分散,难以共享。每个开发者维护自己的一套测试接口集合,无法共用他人接口集合,开发过程中充斥着大量重复造数据、填接口的工作,效率不高

  • 其他问题。除此之外还有可能碰到诸如 文档导出、接口分类规划、操作便利性等一系列问题。

基于此情况,因此本文接下来就来推荐几个常用的 API管理系统 ,帮助前后端分离开发模式下提升效率和可靠性,总有一个你看得上!

 Swagger  

Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。它可以方便地和 Spring MVC、Spring Boot等框架进行快速整合,并且通过结合诸如 Swagger-UI 等组件,将 controller 层的方法进行方便地 可视化展示 ,像方法注释,方法参数,方法返回值等都提供了相应的用户界面。

EfqyUjv.png!web

项目主页:https://swagger.io/

 YApi  

YApi 是高效、易用、功能强大的 api 管理平台,旨在为开发、产品、测试人员提供更优雅的接口管理服务。它可以帮助开发者轻松创建、发布、以及维护API。除此之外,YApi 还为用户提供了优秀的交互体验,开发人员只需利用平台提供的接口数据写入工具以及简单的点击操作就可以实现接口的管理。

z2UVfaI.jpg!web

功能特性:

  • 基于 Json5 和 Mockjs 定义接口返回数据的结构和文档,效率提升多倍

  • 扁平化权限设计,即保证了大型企业级项目的管理,又保证了易用性

  • 类似 postman 的接口调试

  • 自动化测试, 支持对 Response 断言

  • MockServer 除支持普通的随机 mock 外,还增加了 Mock 期望功能,根据设置的请求过滤规则,返回期望数据

  • 支持 postman, har, swagger 数据导入

  • 免费开源,内网部署,信息再也不怕泄露了

项目主页:http://yapi.demo.qunar.com/

 eolinker  

eolinker也挺好用,UI好看,是一个开箱即用的API研发管理方案,0代码实现API自动化测试。

ieyYnmq.jpg!web

功能特性:

  • 开箱即用的API研发管理方案:无需繁琐的配置,支持读取代码注解生成API文档,或者是通过UI界面快速创建全面的API文档。通过Mock API、API变更通知、版本管理等服务,让团队更敏捷。

  • 强大的“0代码”API测试 / 自动化测试:全面支持HTTPS、Restful、Web Service等类型API。强大的API自动化测试和用例管理功能,让你不写代码实现API自动化测试,实时生成测试报告,提高测试覆盖率。

  • 实用的团队协作功能:提供强大的人员权限管理功能,你可以为不同的成员设置允许执行的操作,系统会自动记录成员的所有操作日志。并且可以通过丰富的插件系统来扩展现有的系统功能。

  • 开放的平台设计:一键导入Postman、Swagger等产品数据,让您快速享受到EOLINKER API Studio的服务。您还可以通过Open API将EOLINKER API Studio对接到各类企业内部系统中,实现开发、测试、运维一体化。

  • 支持离线的私有化部署:EOLINKER API Studio支持离线的私有化部署,产品以及数据均储存在企业内部,您可以根据部门/分公司设立相互隔离的工作空间,并且通过Open API对接Jenkins等各类持续集成系统。

项目主页:https://www.eolinker.com/

 ShowDoc  

ShowDoc 是一个非常适合IT团队的在线文档分享工具,它可以加快团队之间沟通的效率。 免费开源

支持如下特性:

  • API文档:随着移动互联网的发展,BaaS(后端即服务)越来越流行。服务端提供API,APP端或者网页前端便可方便调用数据。用 ShowDoc可以非常方便快速地编写出美观的API文档。

  • 数据字典:一份好的数据字典可以很方便地向别人说明你的数据库结构,如各个字段的释义等。

  • 说明文档:你完全可以使用showdoc来编写一些工具的说明书,也可以编写一些技术规范说明文档以供团队查阅

jmEfaaM.png!web

项目主页:https://www.showdoc.cc/

 易文档  

最后一个 易文档 也是,从需求文档、API文档、部署文档到使用手册,支持多种定制文档编辑器;同时也支持接口在线测试,一键生成文档、调用示例、mock配置。

j6VF7b7.jpg!web

项目主页:https://easydoc.xyz/

大家如果有使用体验更好的文档、API管理等工具,也可以交流分享一下

后   记

若有错误或者不当之处,可在本公众号内反馈,一起学习交流!

更多热文在此:

   ●   Spring Boot 系列实战文章合集(源码已开源)

●   程序员写简历时必须注意的技术词汇拼写

●   基于Spring Security OAuth2 的SSO单点登录+JWT权限控制实战

●   从一份配置清单详解Nginx服务器配置

●   如何在Windows下像Mac一样优雅的开发

●   Docker容器可视化监控中心搭建

●   利用ELK搭建Docker容器化应用日志中心

●   真实IT领域2/8法则,扎心了!

●   一文详解 Linux系统常用监控工具

更多 务实、能看懂、可复现的 技术文章、资源尽在公众号 CodeSheep ,欢迎扫码订阅,第一时间获取更新 :arrow_down::arrow_down::arrow_down:

Ifeqeq2.gif


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK