当前位置: 首页 > article >正文

快速导出接口设计表——基于DOMParser的Swagger接口详情半自动化提取方法

 

作者声明:不想看作者声明的(需要生成接口设计表的)直接前往https://capujin.github.io/A2T/

注:Github Pages生成的页面可能会出现访问不稳定,暂时没将源码上传至Github,如有需要,可联系我私发。

前言

使用:打开你的swagger网页,展开你需要导出表的api详细,F12打开控制台,打开“元素”面板,向上滑动找到html标签,右击选择复制标签/复制html啥的,然后打开上面的网站复制到输入区,单击“开始解析”按钮。

效果展示:

第1章 绪论

空格发牢骚

1.1 研究背景与意义

空格我选题是xx系统的设计与实现,然后其中一章我定为“系统设计”,然后在这展示详细的“接口设计”(见图1-1)。使用《基于DOMParser的Swagger接口详细半自动化提取方法》可以快速帮助实现多接口设计表的插入。

图1-1 系统设计子标题

1.2 研究现状

1.2.1 前辈的研究现状

空格参考了多位前辈的接口设计篇,无一例外用的类三线表,如图1-2所示:

图1-2 前辈的接口设计表

1.2.2 我的研究现状

空格但是...但是我的这破玩意太多了,一想到六个模块我要写这么多英文字母,我就想爆粗,实在是干不动了。

图1-3 我的Swagger接口组

空格去网上各种扒,“一键生成接口设计表”、“接口表在线生成”、“Swagger接口转表格”....结果一无所获,更烦了。

1.3 本章小结

空格本章详细阐述了作者发布这篇CSDN的原因,同时为了凑页数和水字数,作者决定攻克接口设计表快速生成这一耗时问题,提供实用方案。经过详细分析,作者发现该方法存在明显的适配性和限制性缺陷,主要适用于后端已集成Swagger作为接口文档工具,并且使用者正处于撰写系统接口设计文档阶段的场景。因此,本章不仅介绍了这一快速生成方法,还通过对其局限性的深入探讨,帮助读者更全面地了解其适用范围,避免在实际项目中不恰当地使用,从而节省时间和资源。

第2章  相关技术概述

空格但我学的啥?前端啊!别的不会,F12打开个控制台copy个网页源码,然后拿源码提取关键信息借助ChatGPT来帮我转成表格还不会吗?(!脑袋上一个电灯泡)

2.1 开发人员工具

空格打开Swagger页面,按F12或Ctrl+shift+I即可打开“控制台”面板(如图2-1所示)。需要关注的为:

图2-1 控制台面板

空格① 元素检查。使用方法,点击后将鼠标移至页面视图,会自动在③中高亮指定代码块。

空格② 控制台。使用方法,运行js代码。

空格③ 元素。使用方法,和①相反鼠标指定代码块,会自动在页面视图高亮指定区域,如图2-2所示:

图2-2 鼠标在代码块时的页面效果

2.2 DOMParser

空格DOMParser是Web API中文档对象模型的API,​ 可以将存储在字符串中的 XML 或 HTML 源代码解析为一个 DOM Document。 ​说人话就是DOMParser 是浏览器内置对象可以用new语法,它可以把一段HTML 字符串转成可以用JS代码操作的dom结构。

图2-3 DOMParser使用示例

2.3 Vue3 + Vite

空格vite快速初始化、打包配合vue3响应式处理,嗷嗷叫的快。

2.4 其他第三方库

2.4.1 Element Plus

空格都快成vue项目的标配组件库了。

2.4.2 Supabase.js

空格一个开源的线上数据库,每个月有限制可调用的tokens,适合我这种没服务器的还有时候需要搞点线上服务的。

2.4.3 Intro.js

空格一个用于制作网页引导效果的js插件,用法很简单。

2.4.4 Pixpin

空格一个用于电脑截图的强大截图工具,支持横向/竖向滚动截屏。下载地址:https://pixpin.cn/

 2.4.5 Gihub Pages

空格GitHub Pages 是由 GitHub 提供的一项免费服务,允许用户将代码仓库(repository)中的静态内容发布为网站,相当于免费将自己的demo部署到线上,让所有可访问。

第3章 需求分析

空格这个系统的主旨就是为了免费帮助那些,那些写论文的,计算机论文的,尤其是写系统设计类论文的并且还想在论文开一篇名为“接口设计”篇来水页数字数的,在网上苦苦找寻不到一键生成设计表的,又懒得自己在word里一点点敲的,恰巧后端代码用了swagger的,苦逼大学生的。

空格作为符合以上需求的苦逼大学生,现将我的需求分析如下:

空格1. 能根据我的Swagger网页源码抽取我想要的结构,包括接口名、请求方式、请求参数,相应类型等内容,如图3-1所示:

图3-1 Swagger抽取目标内容

空格2. 抽取后,应该能在页面生成表格,并且表格要支持修改,比如自定义列宽、自定义表头、自定义表格边框线等表格操作。

空格3. 满足上面两个核心需求后,接下来就是扩展需求了,比如对表格样式的自定义配置要实现存储、读取功能,对抽取内容进行编辑,比如某个抽取的内容不满意要能提供手动修改等等。

第4章 系统设计与实现

空格根据上一章的分析,我们大致明确了系统需要实现什么功能,下面将对系统的设计与实现做出详细概述。

空格系统主界面如下图4-1所示,左侧为输入html数据源,右侧为视图窗口,左下角为功能区。

图4-1 系统主界面

空格在点击“开始解析”按钮后,在视图区会加载解析结果(如图4-2所示),同时“开始解析”变成“已解析”字样。

图4-2 解析结果视图

空格在右侧视图标题右侧,可点击“切换视图”按钮,切换到指定视图,如图4-3所示。

图4-3 切换视图功能

第5章 结语

空格两天的时间匆忙写完,肯定有诸多bug,希望诸位同僚能不吝赐教,向我反馈一切让你感到蹩脚的问题,与君共勉!

 


http://www.kler.cn/a/588295.html

相关文章:

  • 物联网(Internet of Things,IoT)的核心概念
  • 【机器学习】主成分分析法求数据前n个主成分
  • 基于javaweb的SpringBoot精美物流管理系统设计与实现(源码+文档+部署讲解)
  • 地基Prompt提示常用方式
  • DQN 玩 2048 实战|第二期!设计 ε 贪心策略神经网络,简单训练一下吧!
  • 【SegRNN 源码理解】验证集和测试集
  • 【C语言】函数和数组实践与应用:开发简单的扫雷游戏
  • 【Linux文件IO】系统IO中API描述和基本使用
  • MQTT客户端调试工具模拟MQTT设备接入物联网平台
  • 使用OpenCV与Python编写自己的俄罗斯方块小游戏
  • Java 中 String、StringBuffer 、StringBuffer正确使用方式
  • Java实现【将Markdown格式文本转换为纯文本】
  • 2021 年 12 月青少年软编等考 C 语言六级真题解析
  • Html5星空流星页面经验总结
  • C语言每日一练——day_9
  • AI绘画笔记--基础知识
  • Tomcat - Session 会话保持
  • 大模型的参数数量与学习的知识数量之间
  • CSS -position(定位)
  • 81.HarmonyOS NEXT 状态管理与响应式编程:@Observed深度解析