• 0
  • 0
分享
  • 横空出世!IDEA 版 API 接口神器来了,一键生成文档!
  • Liam 2023-02-20 16:48:45 字数 1937 阅读 1763 收藏 0

每个开发都不想写文档。当你不想写接口文档时,可以通过安装插件在 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 项目,原因后面说)

1.png


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

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


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

  • 3.png


  • 3、模块项目 ID 配置: 这项主要是进行代码模块名和项目 ID 的映射关系配置,在 Apifox 中对应项目的【项目设置】中选择【基本设置】,复制并保存项目 ID,填写在以上的对应模块名处。

  • 4.png


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

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

  • 1、打开需要上传的 Controller 文件,右键选择「 Upload to Apifox」。

  • 5.png


  • 2、去 Apifox 项目内,就可以看到刚才自动同步过来的文档了。

  • 6.png


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

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

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

7.png


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

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

8.png


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

和 Swagger 有啥不一样?

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

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

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

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

下载链接:apifox.cn


  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •   作为一只从事软件测试将近10年的老鸟,如今在腾讯某测试团队任职测试主管一职。回首过往,从事软件测试这十年也有些许体会,写出来供大家思考,欢迎大家留言交流。  首先,先谈谈软实力,一个优秀的测试技术专家,我认为需要具备以下几个特性:  持续学习能力:  计算机技术的发展可谓日新月异,如果不持续学习,那么不出2年,你就会发现你只能当一个廉价的手工测试人员。所以如果能在工作中学习最好,不能的话,下班后保证2个小时的自学时间。几年下来,你就能发现自己的进步有多大。  沟通能力:  日常工作的沟通能力,和开发、产品、运维、客服同事的沟通要及时,表达要准确,多微笑、多倾听、保持良好轻松的同事关系。  ...
            1 1 876
            分享
          • 研究对象:豆瓣网豆瓣网简介:豆瓣(douban)是一个社区网站。网站由杨勃(网名“阿北”) 创立于2005年3月6日。该网站以书影音起家,提供关于书籍、电影、音乐等作品的信息,无论描述还是评论都由用户提供(User-generated content,UGC),是Web 2.0网站中具有特色的一个网站。网站还提供书影音推荐、线下同城活动、小组话题交流等多种服务功能,它更像一个集品味系统(读书、电影、音乐)、表达系统(我读、我看、我听)和交流系统(同城、小组、友邻)于一体的创新网络服务,一直致力于帮助都市人群发现生活中有用的事物。豆瓣网用户体验要素之战略层一. 产品目标:商业目标:打造国内口碑书...
            0 2 2719
            分享
          • Dify 一词源自 Define + Modify,意指定义并持续改进你的 AI 应用。随着大型语言模型(LLM)不断涌现的各种能力,AI 应用的场景变得更加广阔。然而,对于大多数开发者而言,基于 GPT 等大型语言模型、Langchain 等技术框架开发 AI 应用仍然是一项门槛极高的任务。开发者必须花费大量时间学习各种晦涩的概念和技术研究,也无法进行 AI 应用的持续运营。是否有这样一个工具,开发者无需关注基础设施的底层原理,只需专注于将想象力转化为实际落地的 AI 应用并持续运营,可以将大型语言模型变成像云计算服务一样易于使用?基于这个问题,Dify.AI 诞生了。它是为你而做的(Do ...
            0 0 1528
            分享
          • 1、接口测试:是测试系统组件间接口的一种测试。主要用于检测外部系统于系统之间以及系统内部各个子系统之间的交互点。重点测试的时数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等等,这要求对业务逻辑有一定程度上的理解,对数据流向有较好的定位。2、接口测试的分类:系统与系统之间的调用(如分享时,微信会提供接口给“跑向珠峰”);上层服务对下层服务的调用;服务之间的调用(如添加一条数据时,会先调用数据查询的服务,查询改数据是否是重复数据)。不同类型的接口测试方法可能不一致,但总体来说,不管是哪种类型,被测接口即为服务方,测试手段为客户方,接口测试的目的就是:通过我们的测试手段,去验证满足其声...
            0 0 1301
            分享
          •   苹果公司在欧盟委员会的一次官方听证会上表示,尽管竞争对手提出了投诉,但苹果公司已经完全遵守了新的《数字市场法》(DMA)。现在,《数字市场法》已在欧盟全面生效,欧盟监管机构有权调查合规情况,并在必要时对违反新法的大型科技公司处以罚款。在欧盟委员会的听证会上,苹果公司表明了自己的立场,并反驳了竞争对手的批评。  据路透社报道,欧盟委员会的听证会为期一天,苹果公司与竞争对手以及应用程序开发商和企业用户出席了听证会。苹果公司的律师凯尔-安迪尔(Kyle Andeer)在欧盟委员会听证会上表示,该公司已专门为遵守《数字市场法》重新设计了系统。  安迪尔在听证会上说:"我们首先要确保我们遵...
            0 0 777
            分享
      • 51testing软件测试圈微信