自定义头部 -->

API 管理平台工具该如何选择

调研

市面上的API 管理平台很多, 比如 :

swagger

优点 :

  • OpenAPI,不针对特定的语言的API
  • 支持Json和yaml来编写API文档,并且支持导出为json、yaml、markdown等格式
  • 自动生成相应的SDK
  • 界面清晰,无论是editor的实时展示还是ui的展示都十分人性化

缺点 :

  • 代码的侵入太大
  • 并没减少后端工作量
  • 不支持 Mock Server
  • 无团队功能, 比如权限控制
  • yaml文件只能和API项目本身放在一起
  • 官方文档不够完善, 只有介绍不同模块

YAPI

优点:

  • UI 舒服, 用户操作体验极佳
  • 可视化接口管理, 支持附件上传、图片预览等场景富文本编辑器功能
  • 支持内网部署
  • 在线测试, 自动化测试
  • 多版本/ 团队协作功能
  • Mock Server
  • 多种格式的数据导入导出
  • 支持自定义插件
  • 提供开发 API

Docway

我开始用的时候 还叫 小幺鸡, 除了自定义插件功能没有 其他基本和 YAPI 相似

RAP2

优点:

  • Mock Server
  • 支持JSON/XML数据导入
  • 支持内网部署
  • 团队协作功能

功能基本类似 YAPI

eolinker

优点:

  • 功能强大跟 YAPI 相似, 除了 API 管理, 还有提供了微服务网关, API 监控等功能, 数据库管理等.

    比较适合初创团队

缺点 :

  • 这么多功能当然不是白给的, 白嫖是不可能白嫖的

需求

看了这么多, 还是需要考虑一下我们的基本需求.

  • 最少工作量, 期望是我只在代码, 或者文档, 或者脚本 其中一处写上说明, 其他地方不用重复编辑, 不想多写除了备注说明以外的东西
  • 开源, 能白嫖就绝不白给
  • 团队协作功能, 需要权限管理, 项目分组, 人员分组, 项目移动, 复制等功能
  • 独立部署, 基本开发文档都不能对外, 开源之前一般也不会选择放在在线平台上
  • 自动化测试, 在线测试
  • Mock Server
  • 数据导入导出 支持 markdown, json , postman
  • 支持二次开发

好了看到这里, 基本可以确定使用YAPI, 下面简单介绍一下 如何使用 YAPI

方案

这里我们使用 YAPI + idea plugin: EasyYapi 的组合.

优点

  • 非常全面的 API 管理功能.
  • YAPI 可以无缝对接 swagger , 为 api 迁移提供便利
  • YAPI 的开放 API 和插件机制提供了很好的伸缩性, 为定制化和扩展提供了可能. 可以对接 其他类似 CI 的平台
  • EasyYapi 提供 api 多种导出功能
  • 使用 EasyYapi 的同时, 可以使代码注释更加规范.

写在最后

还是老三样. 欢迎 点赞, 转发, 评论 ~

posted @ 2020-06-17 21:46  AllenAlan  阅读(1194)  评论(0编辑  收藏  举报