"概述 微服务在当今的 web 开发中越来越盛行,前后端分离现在似乎也已成为中大型 Web 工程的基本模式,如何建立好前端调用和后端接口 (或者服务调用方和 API 提供方) 之间的契约,妥善处理好前端和后端之间的调用关系已经已经成为每个 web 项目开发前必须要考虑的一个问题,选择一个良好的 API 管理工具可以妥善处 .."

API 管理工具 Swagger 和 RAP 的比较

本贴最后更新于 227 天前,其中的信息可能已经时移世易

概述

微服务在当今的 web 开发中越来越盛行,前后端分离现在似乎也已成为中大型 Web 工程的基本模式,如何建立好前端调用和后端接口 (或者服务调用方和 API 提供方) 之间的契约,妥善处理好前端和后端之间的调用关系已经已经成为每个 web 项目开发前必须要考虑的一个问题,选择一个良好的 API 管理工具可以妥善处理好前端和后端开发人员的任务分工,使得项目开发可以达到事半功倍的效果。

之所以关注这个方面,是因为部门里越来越多的即将开始的新项目都要采取这种前后端分离或者微服务的模式,部门老大让我找一下当下比较流行的 API 文档管理工具,做一下对比整理一些资料给他做一下参考。因为之前做项目时使用过阿里的 RAP,学习 Springboot 时又接触了 Swagger,在网上搜索 API 管理相关工具时也是以这两个工具为主,所以这篇文章也是主要对比分析 RAP 和 Swagger 两种工具。

什么是 API 文档管理工具

在通常 Web 开发中,尤其是在前后端分离的开发模式下,我们通常需要定义一份接口文档来规范接口的具体信息。如一个请求的地址、有几个参数、参数名称及类型含义等等。而 API 管理工具可以帮我们管理这些接口,现在常用 API 管理工具有 Swagger、阿里的 RAP、Postman 等等。

为什么需要 API 文档管理工具

Swagger 简介及特点

简介

Swagger 是一种 Rest API 的 简单但强大的表示方式,标准的,语言无关,这种表示方式不但人可读,而且机器可读。 可以作为 Rest API 的交互式文档,也可以作为 Rest API 的形式化的接口描述,生成客户端和服务端的代码。 Swagger 主要包括三部分 Swagger API Spec,描述 Rest API 的语言。Swagger UI,将 Swagger API Spec 以 HTML 页面展现出来的模块。Swagger Editor,Swagger API Spec 的编辑器。这里不描述 Editor。

特点

官网地址:https://swagger.io/specification/
相关教程:http://blog.csdn.net/catoop/article/details/50668896

Swagger 接口管理界面

1-547668d3.png

RAP 简介及特点

简介

RAP 是一个 GUI 的 WEB 接口管理工具。在 RAP 中,可以定义接口的 URL、请求 & 响应细节格式等等。同时 RAP 还提供 MOCK 服务、测试服务等自动化工等工具,帮助开发团队高效开发。

特点

RAP 接口管理界面

2-8769bbd8.png)

Swagger 和 RAP 的对比

Swagger 的优势

Swagger 的不足

RAP 的优势

RAP 的不足

  • Java

    Java 是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由 Sun Microsystems 公司于 1995 年 5 月推出的。Java 技术具有卓越的通用性、高效性、平台移植性和安全性。

    2214 引用 • 7524 回帖 • 967 关注
  • 总结
    86 引用 • 862 回帖 • 1 关注
7 回帖   
请输入回帖内容...
  • wa API  

    博主用过 eolinker 吗?是我用过最好的 API 接口管理工具。

  • seanlee API  

    这个还倒真没了解过,刚去官网看了一下,看接口管理类似于 RAP,功能比 RAP 完备丰富多了,而且支持 Postman、RAP 等数据导入,后面有机会再详细了解一下

  • gitors  

    rap 手动编辑确实麻烦

  • zk123  

    apidoc 也是类似 swagger 但支持直接 mock 调用

  • skipper  

    到底哪个好?

    1 回复
  • gitors        

    各有各的好处吧。结合起来更好

  • seanlee API  

    有时间了解一下

请输入回帖内容 ...