横空出世!IDEA 版 API 接口神器来了,一键生成文档!

简介: 这个插件可以实现代码零入侵自动生产接口文档。

每个开发都不想写文档。当你不想写接口文档时,可以通过安装插件在 IDEA 里实现自动同步,一边写代码一边同步接口文档给你的前端、测试同学。以下内容手把手教你怎么操作(这里仅面向使用 IDEA 编辑器、遵循 Java Spring 框架注释规范的同学):

首先,你需要安装一个插件

IDEA 插件市场里搜索 「Apifox Helper」,这是国内一个做 API 协作管理平台的厂商(Apifox)做的插件,可以非常方便自动生成接口文档并且同步到你的项目中。这个插件可以实现代码零入侵自动生产接口文档。

  • IDEA 安装插件:打开 IDEA > Preferences(Settings) > Plugins,搜索 Apifox Helper,点击安装。这里如果存在安装速度慢,你也可以去 Jetbrains Marketplace 的官网下载。

安装完成后,你可以选择同步到 Apifox 项目中,也可以直接导出 markdown 文档。如果是同步到 Apifox 项目,你还需要下载或注册 Apifox 软件,创建一个对应的项目:

  • 注册/下载地址:http://apifox.cn ,直接微信扫一扫就可以,非常简单。
  • 创建项目:点击创建团队 >新建项目,填入对应的项目名称。

(这里强烈推荐同步到 Apifox 项目,原因后面说)

网络异常,图片无法展示
|

第二步,把你 IDEA 中的项目和 Apifox 的项目关联

插件安装成功后,要将 IDEA 内的项目与 Apifox 的项目进行相关联,需要配置令牌。在 IDEA 中进入插件设置界面 Preferences(Settings) > Apifox Helper 中填写即可。需要填写的基础信息有三个:

  1. Apifox 服务器地址: 默认 Apifox API 服务地址为 https://api.apifox.cn,默认就填好了,不需要修改。

网络异常,图片无法展示
|

  1. 填写 Apifox 个人访问令牌: 在 Apifox 个人头像处的【账号设置】中选择【API 访问令牌】,新建令牌后复制生成的 Token 填写到以上插件设置中。

网络异常,图片无法展示
|

  1. 模块项目 ID 配置: 这项主要是进行代码模块名和项目 ID 的映射关系配置,在 Apifox 中对应项目的【项目设置】中选择【基本设置】,复制并保存项目 ID,填写在以上的对应模块名处。
  1. 网络异常,图片无法展示
    |

到这里,就完成全部的设置动作,可以实现文档的自动生成和更新同步了。说明一下:每个项目只需要开始的时候设置这一次,后面就不需要做这个操作了。

第三步,自动生成接口文档

  1. 打开需要上传的 Controller 文件,右键选择「 Upload to Apifox」。
  1. 网络异常,图片无法展示
    |
  1. 去 Apifox 项目内,就可以看到刚才自动同步过来的文档了。

网络异常,图片无法展示
|

  1. 当后续接口代码有变动或更新时,再次点击「 Upload to Apifox」就可以同步。

为什么推荐创建一个 Apifox 项目?

这个插件虽然支持导出 markdown,但给别人分享分档的时候不是很方便,有更新的时候也不会同步,需要反复导出。使用 Apifox  项目就可以直接给别人分享一个链接就可以,你之后接口的更新也会直接同步,对方看到的永远是最新的。另外,Apifox 这个产品本身还有很丰富的  API 调试、Mock 、自动化测试等功能,你的前端和测试也可以直接在上面做后续的工作了。这里不细说,有兴趣的可以去找他们官方文档了解。

网络异常,图片无法展示
|

有了这个插件,你还可以直接在 IDEA 里调试

Apifox Helper 支持在 IDEA 中一键发起接口自测,不需要切换其他软件。在 IDEA 中选中需要调试的 API 文件,右键选择「Call API」发起请求就可以。

网络异常,图片无法展示
|

当然,以上只是简单版本的自动同步文档,没有什么特殊情况也就可以满足使用了。当然,可能会存在一些特殊的要求,比如说,设置接口 API  所在的文件夹名称、想要忽略某些 API 不同步等等情况。在他们的官方文档上是推荐使用配置文件的方式实现你各种特殊规则和要求的。详情可以自行去  Apifox 官方查阅。

和 Swagger 有啥不一样?

很多开发都习惯用 Swagger,用 Swagger 可以一定程度上解决自动生成文档的问题,但有一个很大的缺点:你需要写大量的注释,会对你的逻辑代码有入侵。并且在功能的全面性上不如 Apifox 。

Swagger:需要写注释,对逻辑代码有入侵,功能单一;

Apifox:可以基本实现代码零入侵,使用标准的 Javadoc 注释就可以自动生成。同时它也支持同步 Swagger 的文档到项目里。还有 API Mock、自动化测试等延伸功能。

推荐用法是可以省略 Swagger 这一步,直接安装这个插件使用就可以。

下载链接:www.apifox.cn

相关文章
|
2月前
|
机器人 API Python
智能对话机器人(通义版)会话接口API使用Quick Start
本文主要演示了如何使用python脚本快速调用智能对话机器人API接口,在参数获取的部分给出了具体的获取位置截图,这部分容易出错,第一次使用务必仔细参考接入参数获取的位置。
119 1
|
11天前
|
安全 API 开发者
Web 开发新风尚!Python RESTful API 设计与实现,让你的接口更懂开发者心!
在当前的Web开发中,Python因能构建高效简洁的RESTful API而备受青睐,大大提升了开发效率和用户体验。本文将介绍RESTful API的基本原则及其在Python中的实现方法。以Flask为例,演示了如何通过不同的HTTP方法(如GET、POST、PUT、DELETE)来创建、读取、更新和删除用户信息。此示例还包括了基本的路由设置及操作,为开发者提供了清晰的API交互指南。
44 6
|
2月前
|
存储 JSON API
淘系API接口(解析返回的json数据)商品详情数据解析助力开发者
——在成长的路上,我们都是同行者。这篇关于商品详情API接口的文章,希望能帮助到您。期待与您继续分享更多API接口的知识,请记得关注Anzexi58哦! 淘宝API接口(如淘宝开放平台提供的API)允许开发者获取淘宝商品的各种信息,包括商品详情。然而,需要注意的是,直接访问淘宝的商品数据API通常需要商家身份或开发者权限,并且需要遵循淘宝的API使用协议。
淘系API接口(解析返回的json数据)商品详情数据解析助力开发者
|
2月前
|
SQL 存储 数据处理
|
2月前
|
XML JSON API
RESTful API设计最佳实践:构建高效、可扩展的接口
【8月更文挑战第17天】RESTful API设计是一个涉及多方面因素的复杂过程。通过遵循上述最佳实践,开发者可以构建出更加高效、可扩展、易于维护的API。然而,值得注意的是,最佳实践并非一成不变,随着技术的发展和业务需求的变化,可能需要不断调整和优化API设计。因此,保持对新技术和最佳实践的关注,是成为一名优秀API设计师的关键。
|
2月前
|
Java API 数据中心
百炼平台Java 集成API上传文档到数据中心并添加索引
本文主要演示阿里云百炼产品,如何通过API实现数据中心文档的上传和索引的添加。
|
2月前
|
监控 API 数据安全/隐私保护
​邮件API触发式接口分析?邮件API接口好评榜
邮件API在企业通信和营销中至关重要,通过自动化邮件发送流程提升效率与客户满意度。本文解析邮件API触发式接口,即基于特定事件(如用户注册、购买产品)自动发送邮件的技术,能显著加快企业响应速度并增强用户体验。推荐市场上的优秀邮件API产品,包括SendGrid、Mailgun、Amazon SES、Postmark及新兴的AOKSend,它们各具特色,如高发送率、详细分析工具、灵活配置、强大的日志功能及用户友好的API接口,帮助企业根据不同需求选择最合适的邮件API解决方案。
|
2月前
|
存储 算法 Oracle
19 Java8概述(Java8概述+lambda表达式+函数式接口+方法引用+Stream+新时间API)
19 Java8概述(Java8概述+lambda表达式+函数式接口+方法引用+Stream+新时间API)
60 8
|
1月前
|
测试技术 API 数据库
电商API接口定制与开发系列之——商品详情接口介绍
——在成长的路上,我们都是同行者。这篇关于API接口的文章,希望能帮助到您。期待与您继续分享更多API接口的知识,请记得关注Anzexi58哦! 在电商API接口定制与开发系列中,商品详情接口是至关重要的一部分,它直接关系到用户浏览商品、获取商品信息的关键环节。以下是对商品详情接口的详细介绍:
|
2月前
|
存储 数据采集 API
提升店铺好评秘籍:淘宝商品评论接口与电商 API 接口的深度解析
该接口名为item_review,用于获取淘宝商品评论信息,支持HTTP GET或POST请求,体验API为c0b.cc/R4rbK2。主要请求参数包括商品ID(num_iid)、排序方式(sort)、页码(page)。响应参数涵盖评论内容(rate_content)、评论日期(rate_date)、评论图片(pics)、买家昵称(display_user_nick)、商品属性(auction_sku)
下一篇
无影云桌面