> 文章列表 > 推荐一个好工具,可以替代 swagger 生成文档

推荐一个好工具,可以替代 swagger 生成文档

推荐一个好工具,可以替代 swagger 生成文档

Swagger 是一个规范且完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。

Swagger 的目标是对 REST API 定义一个标准且和语言无关的接口,可以让人和计算机拥有无须访问源码、文档或网络流量监测就可以发现和理解服务的能力。当通过 Swagger 进行正确定义,用户可以理解远程服务并使用最少实现逻辑与远程服务进行交互。与为底层编程所实现的接口类似,Swagger 消除了调用服务时可能会有的猜测。

Swagger 的优势

  • 支持 API 自动生成同步的在线文档:使用 Swagger 后可以直接通过代码生成文档,不再需要自己手动编写接口文档了,对程序员来说非常方便,可以节约写文档的时间去学习新技术。

  • 提供 Web 页面在线测试 API:光有文档还不够,Swagger 生成的文档还支持在线测试。参数和格式都定好了,直接在界面上输入参数对应的值即可在线测试接口。

但相比于 Swagger 我更推荐这个国产的开源 API 管理工具——Postcat

Postcat 和Swagger 有什么区别呢?

Postcat 插件不会入侵到代码内部,无需添加任何jar包依赖

插件通过分析用户注释进行接口解析,最终生成接口文档并上传至 Postcat 服务器,使得开发者可以在 Postcat 上进行 API 管理和分享,提高协作能力和开发速度。

Postcat 提供了多种拓展注释,@path@url@method@name@hidden@required,这些注释可以在设置界面进行自定义或兼容现有注释。

此外,Postcat 还提供了注释生成功能,对于没有或仅有少量注释的类和方法,开发者无需费力手动添加,该功能可以分析方法字段含义并自动生成注释。开发者只需要检查或根据实际场景进行微调,即可生成一份较完善的API文档。

如果原有注释不足,Postcat 会通过添加方式补充注释,移除注释时只会移除Postcat提供的那些拓展性注释,不会破坏用户自身的注释。同时,开发者还可以使用"意图"功能局部生成插件注释,并进行调整和修改。

Postcat提供了多种 API 上传方式,方便开发者在不同的场景下使用:

  • 对于首次使用Postcat的现有项目,开发者可以使用主菜单中Tools分组下的Upload Project Api Doc来完成项目级别的接口上传。

  • 对于新需求下创建的Controller,在完成接口定义后,开发者可以右键菜单,选择 Upload All Api 来进行单个文件级别全部上传,做到先有文档再有逻辑,前后端工作不再串行阻塞。

  • 对于某个部分单独接口的改动,无需全部上传,开发者可以右键菜单,选择Upload Api功能,该功能会展示当前编辑类的接口信息,并提供接口预览和接口选择界面,使得用户可以勾选需要更新或上传的目标API进行信息核对和上传。

了解 Postcat:

Postcat 是一个强大的开源、跨平台(Windows、Mac、Linux、Browsers...)的 API 开发测试工具,支持 REST、Websocket 等协议(即将支持 GraphQL、gRPC、TCP、UDP),帮助你加速完成 API 开发和测试工作。

 

Postcat 核心功能:

  • API 文档管理:可视化 API 设计,生成 API 文档

  • API 测试:自动生成测试参数,自动生成测试用例,可视化数据编辑

  • 插件拓展:众多插件扩展产品功能,打造属于你和团队的 API 开发平台

  • Mock:根据文档自动生成 Mock,或创建自定义 Mock 满足复杂场景

  • 团队协作:既能实现 API 分享也能可以创建云空间共同协作

Postcat 优势:

  • 免登录即可测试:省去繁琐的验证登录的操作

  • 界面简洁:没有冗余的功能与复杂选项

  • 免费:中小团队以及个人使用

  • 丰富的插件:支持数据迁移、主题、API 安全等高达 25 款插件

  • 国产:能更好的理解国内用户的需求,与开发团队沟通无障碍

  • 完善的用户文档:跟着操作就能快速上手

多提 Issue !多反馈!

在使用过程中有任何疑问,可以进群交流:

也可以在线提 Issue(强烈推荐这种开源的方式),提问题本身就已经在贡献社区了: https://github.com/Postcatlab/postcat/issues

 

如果喜欢,不妨 Star 支持一下

这个项目是开源的,如果你觉得这个项目还不错的话,不妨点个 Star 支持一下! Github :https://github.com/Postcatlab/postcat