Apikit 自学日记:自动生成 API 文档

news2024/12/22 23:49:04

功能入口:API管理应用 / 选中某个项目 / 其他菜单 / 数据源同步(API文档自动生成)

该功能可通过配置数据源信息,实现基于数据源的API信息自动生成API文档。

当前支持5种数据源:Swagger URL、apiDoc、Github、gitlab、码云

Swagger URL & apiDoc 数据源

Swagger URL和apiDoc的数据源配置方式一致,仅需填写来源名称和json文件的访问地址即可。

  • 字段解析

  • 来源名称:用于标识该来源的名称,输入名称不影响同步效果。

  • json文件访问地址:Swagger URL或apiDoc生成的Json地址。注意该地址需可通过网络访问,以及该地址需可返回JSON类型的数据,否则会提示无法访问该地址。

 

Gitlab & github & 码云数据源

代码仓库类的数据源配置较为复杂,系统会远程读取仓库中的代码,根据Swagger 2.0的代码注解格式,自动生成对应的API文档。

  • 字段解析

  • 各代码仓库类型的数据源配置字段解析如下:

GitHub

配置项说明
代码仓库类型选择Github
代码仓库地址默认填写 GitHub: Let’s build from here · GitHub
用户名Github 账户名称
仓库名Github Repository 仓库名称
访问私钥仓库私人令牌在GitHub Repository 的Settings->Developer settings->Personal access tokens中生成
需要扫描的分支默认为 master 分支,您也可以选择实际需要扫描的代码分支
需要扫描的 API 目录路径API 层相关代码的存放路径
需要扫描的数据结构目录路径数据结构相关配置信息的存放路径
目标语言Java 或 PHP
注解格式默认为 Swagger 2.0,代码注释编写的格式参考下面的形式来写,或者参考官方文档 swagger-php/Examples at 2f66ec81d2bc4b82c26b250b187d5e9ea07b0538 · zircote/swagger-php · GitHub
数据同步方式目前可选增量更新、全量更新、仅添加新的 API 三种形式,API 研发管理平台 推荐采用增量更新的方式。每次同步之后,系统都会自动生成 API 历史版本方便回滚文档,因此即使操作失误也不用担心。
生成API文档的默认状态扫描得到的新增加的API的默认状态,默认是启用状态

GitLab

配置项说明
代码仓库类型选择Gitlab
代码仓库地址GitLab 有线上版本和用户自己搭建私有云版本,线上版本可以填写 The DevSecOps Platform | GitLab,如果是自己部署的 GitLab 则写域名或者IP端口
项目 IDGitLab 中的 project ID
访问私钥可以通过 GitLab 的 Access Tokens 功能获取
需要扫描的分支默认为 master 分支,您也可以选择实际需要扫描的代码分支
需要扫描的 API 目录路径API 层相关代码的存放路径,例如:src/main/java/com/example/demo/controller
需要扫描的数据结构目录路径数据结构相关配置信息的存放路径,例如:src/main/java/com/example/demo/model
目标语言Java 或 PHP
注解格式默认为 Swagger 2.0,代码注释编写的格式参考下面的形式来写,或者参考官方文档 swagger-php/Examples at 2f66ec81d2bc4b82c26b250b187d5e9ea07b0538 · zircote/swagger-php · GitHub
数据同步方式目前可选增量更新、全量更新、仅添加新的 API 三种形式,API 研发管理平台 推荐采用增量更新的方式。每次同步之后,系统都会自动生成 API 历史版本方便回滚文档,因此即使操作失误也不用担心。
生成API文档的默认状态扫描得到的新增加的API的默认状态,默认是启用状态

码云

配置项说明
代码仓库类型选择码云
代码仓库地址项目仓库的访问url,如Gitee - 企业级 DevOps 研发效能平台
空间名您在码云创建的空间名称,如eolinker
仓库名空间中的仓库名称,如goku
访问私钥码云的私人令牌
需要扫描的分支默认为 master 分支,您也可以选择实际需要扫描的代码分支
需要扫描的 API 目录路径API 层相关代码的存放路径
需要扫描的数据结构目录路径数据结构相关配置信息的存放路径
目标语言Java 或 PHP
注解格式默认为 Swagger 2.0,代码注释编写的格式参考下面的形式来写,或者参考官方文档 swagger-php/Examples at 2f66ec81d2bc4b82c26b250b187d5e9ea07b0538 · zircote/swagger-php · GitHub
数据同步方式目前可选增量更新、全量更新、仅添加新的 API 三种形式,API 研发管理平台 推荐采用增量更新的方式。每次同步之后,系统都会自动生成 API 历史版本方便回滚文档,因此即使操作失误也不用担心。
生成API文档的默认状态扫描得到的新增加的API的默认状态,默认是启用状态

同步配置

完成数据源配置后,需要对同步的业务逻辑进行配置。

数据同步方式

支持三种同步方式:增量更新、全量更新、仅添加新的API

  • 增量更新

  • 更新数据时,判断 API 和 API 的内容是否有变化,仅同步发生变化的部分。如增加新的 API、修改发生变化的 API 内容。适用于绝大多数情况,当您不知道如何选择时请选择这种方式,避免丢失数据。

  • 因为要做增量对比,故在选择增量更新时,需要选择用于判断API的唯一标识。可选择接口标识(operationId)、接口地址与请求方式结合判断、接口名称,三种方式。

  • 全量更新

  • 更新数据时,清空现有项目内所有 API,重新从数据源导入 API 信息。注意这种方式会导致之前编辑的 API 内容丢失,仅适用于小部分情况下重新导入所有 API 信息。

  • 仅添加新的API

  • 更新数据时,判断是否有新增的 API,如果有新增的API则添加新的 API,但不会删除已经不存在的 API,也不会更新现有 API 文档的内容。

状态设置 & 新文档分组

无论选择哪种数据同步方式,均可以分别配置新生成的文档状态和发生变更的文档状态。状态可选项为所有API文档的状态。

我们也可以设置新生成的文档添加到哪个分组下,默认是根目录。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/686727.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【FPGA零基础学习之旅#9】状态机基础知识

🎉欢迎来到FPGA专栏~状态机基础知识 ☆* o(≧▽≦)o *☆嗨~我是小夏与酒🍹 ✨博客主页:小夏与酒的博客 🎈该系列文章专栏:FPGA学习之旅 文章作者技术和水平有限,如果文中出现错误,希望大家能指正…

MAC电脑使用技巧

Mac打开根目录 /user下的文件 mac 上怎么显示隐藏的/user文件夹,有两种方法可选~~~ 1,Finder界面是,最上方,通过“前往”进入“电脑”或文件夹 先进入到需要显示隐藏文件的文件夹下 接着按Command苹果键F,在窗格上会显示搜索栏 然…

爬虫框架和库有多重要?

爬虫框架和库在网络数据提取和分析中非常重它们为开发人员提供了工具和功能,使他们能够更轻松地从互联网上抓取数据。爬虫框架和库通常提供了高效的网络请求、数据解析和存储机制,简化了爬取过程。 使用爬虫框架库有以下几个重要优势: 快速开…

探索Android Jetpack Compose的Surface组件

随着声明性 UI 框架 Jetpack Compose 的出现,Android 开发变得更加简洁和直观。在这篇博客中,我们将深入探讨其中的一项基本构建块 —— Surface 组件,了解它如何影响 UI 的显示和设计。 一、Jetpack Compose和Surface组件 二、Surface组件…

强化学习:值函数近似

例子引入 值得注意的是,之前学习的 状态值和动作值 实际上都是以表格的形式表示的,他的好处是便于直观理解与分析,但缺点是难以处理大量的数据的或连续的状态或行动空间,表现在存储和泛化能力两个方面。如下: 为了解决…

Css设置border从中间向两边的颜色渐进效果

Css设置border从中间向两边的颜色渐进效果 .list-item {border-bottom: 1rpx solid;border-image: linear-gradient(to right, rgba(0,0,0,.1) 0%, rgba(81, 110, 197, 0.76) 50%, rgba(0,0,0,.1) 100%) 1;}效果如图:

js精度问题之bignumber.jsdecimal.js的基本使用

一、背景 JavaScript中存在精度缺失问题 为什么? 主要是由于浮点数的表示方式以及计算机的二进制运算原理导致的 JavaScript使用IEEE 754标准定义了浮点数的表示和计算规则。在这种表示方式中,浮点数由符号位、指数位和尾数位组成。尾数位的长度是固…

智慧高校IT智能运维方案

当前高校网络已成为每个学校必备的信息基础设施,也成了学校提高教学、科研及管理水平的重要途径和手段。随着信息化发展,高校网络建设逐步走向数字化、智慧化,传统的人力巡检、运维逐渐难以支撑高校校园稳定运行。因此,如何在有限…

半导体芯片封装工艺流程,芯片定制封装技术

当我们购买电子产品时,比如手机、电视或计算机,这些设备内部都有一个重要的组成部分,那就是半导体芯片。半导体芯片是由许多微小的电子元件组成的,为了保护和使用这些芯片,它们需要经过一个被称为封装的工艺流程。下面…

EasyRecovery16免费版电脑数据恢复工具

EasyRecovery是一款优质的数据恢复软件,Windows和Mac两个平台都可以运行。可恢复电脑、相机、移动硬盘、U盘、SD卡、内存卡、光盘以及本地存储的电子邮件等数据。同时支持100多种不同格式的文件恢复。EasyRecovery开发了个人版、专业版和企业版三重安装包&#xff0…

想要财务自由

*近日,有调查称“大概五分之一的年轻人存款在一万元以内。10万元存款是一个“坎”,存款超过10万就会超过53.7%的人。”“年轻人”“存款”两个词碰撞在一起,引来了广泛的关注和讨论。你认为年轻人存款难吗?可以从以下几个角度发表…

MapBox 实现自定义地图样式配置(包含本地静态引入)

Mapbox 官方提供了非常多的样式的底图,但是有的时候我们想要自己定义地图的样式基调,比如我们想看到这种样式的地图: 这就需要我们要有自己配置地图的能力了。 那么接下来我们说说怎么做。 首先我们还是登录 mapbox 的官网,找到样式配置的页面,这里直接给大家链接: A…

软件外包开发测试工具

软件测试是软件项目中非常重要的一个环节,在软件项目上线前必须要将问题测出来,否则上线后出现大量问题不但可能引起经济损失,而且也会失去客户的信任。今天和大家分享软件测试中常用的一些工具,希望对大家有所帮助。北京木奇移动…

系列六、Typora下载安装

一、下载 链接:https://pan.baidu.com/s/1c_OMBN_MdWi6-PjKjtcXPg?pwdyyds 提取码:yyds 二、安装 选择安装目录,直接下一步,下一步...即可,例如

SpringBoot01:认识并构建SpringBoot项目

目录 一、Spring Boot简介 1、回顾什么是Spring? 2、Spring是如何简化java开发的? 3、什么是SpringBoot? 3.1、什么是SpringBoot呢? 3.2、所有技术框架的发展似乎都遵循一条主线规律 3.3、SpringBoot开发背景 3.4、Spring…

聊一聊布隆过滤器

布隆过滤器是一个精巧而且经典的数据结构。 你可能没想到:RocketMQ、 Hbase 、Cassandra 、LevelDB 、RocksDB 这些知名项目中都有布隆过滤器的身影。 对于后端程序员来讲,学习和理解布隆过滤器有很大的必要性。下面,一起看一看布隆过滤器的…

智能客服外包服务在医药行业的应用

随着科技的不断进步,智能客服已经在各个行业得到了广泛应用,医药行业也不例外。那么,智能客服在医药行业中又有哪些应用呢?让我们一起来看看吧。 医药行业作为一个高度专业化且具有广泛需求的行业,每天都会涉及到大量…

10个免费PDF转PPT方法,请收好以备不时之需!

众所周知,PDF(便携式文档格式)文件广泛用于交换各种信息,包括文本、图像和图形。但有时,您可能想将 PDF 文件转换为其他格式,例如 PowerPoint。在本文中,我们将讨论 10 种将 PDF 转换为 PPT 的免…

6-js基础-2

JavaScript 基础 - 2 理解什么是流程控制,知道条件控制的种类并掌握其对应的语法规则,具备利用循环编写简易ATM取款机程序能力 类型转换语句综合案例 今日重点单词: 类型转换 类型转换:把一种数据类型转换成另外一种数据类型 为…

快速搭建 Nuxt2 项目

文章目录 01 Nuxt 能提供哪些功能?有什么益处?02 快速搭建项目2.1 安装 create-nuxt-app 脚手架工具2.2 使用脚手架搭建项目 01 Nuxt 能提供哪些功能?有什么益处? 服务端渲染:Nuxt 是基于 Vue.js 的 服务端渲染 框架&…