Swagger Edit 安装和使用教程

Windows下部署Swagger Edit、Swagger UI Windows下部署Swagger Edit、Swagger UI)一、环境需求——已安装node环境二、准备Swagger Editor、Swagger UI源码三、搭建Swagger Editor四、搭建Swagger UI五、Swagger UI 的简单使用 一、环境需求——已安装node环境 可以参考我的另一篇文章Windows下安装nodejs 二、准备Swagger Editor、Sw... 阅读详情
AI摘要

本文介绍了一个用于编辑API接口文档的工具——SwaggerEdit。它能够帮助开发者高效管理接口,并提供了在线编辑和离线编辑两种方式。文章还详细讲解了SwaggerEdit的安装步骤、界面功能以及文档编写语法。

Swagger Edit介绍

Swagger是专门用来管理接口一个工具。在开发过程中,接口一直是纷争的聚焦点,能有效管理接口(保存好记录、及时更新、方便查看、接口测试)。会让整个项目开发效率提升很大。
而其中Swagger Edit是用来编辑接口文档的小程序,简单易用。在官网上分为在线编辑和下载代码线下编辑,两种编辑方式。Swagger是通过YAML来定义你的接口规范。可以通过接口文档帮你生成不同框架的服务端和客户端,方便你mock和契约测试。最后导出JSON格式的API规范,通过Swagger UI对外发布。下图就是Swagger Edit界面:
这里写图片描述

安装

1.下载并且安装node.js
2. npm install -g http-server
3. 下载项目https://github.com/swagger-api/swagger-editor 并且解压。
4. 进入swagger-editor文件夹。运行http-server命令。
5. 进入http://127.0.0.1 就可以看到swagger页面了。

界面介绍

swagger edit界面分为导航栏和工作区。导航栏是对接口文档的处理用,下面会介绍到。
工作区就是我们花时间最多的地方。分为左右区域,左边是编辑区,右边是显示区。左边编辑区使用的YAML语法来编写,只要一修改右边显示区立刻有变化,使用很便捷。进入swagger edit会默认填入一个demo文档,通常我们只需要修改demo文档,就能制作我们想要的接口文档。如下图:
这里写图片描述

编写完文档点击展示区的excute,进行测试接口。如下图

ps:Swagger Edit修改会后会立即把数据保存到浏览器Local Storage里面,所以不用担心关闭浏览器就会把数据丢失。只要不清缓存,不重装浏览器,这数据会一直存在。
这里写图片描述

File

这个用来导出/引入接口文件在swagger edit里面进行编辑,也可以输出YAML/JSON格式。这个如果你是非在线版,编辑一半想下次在编辑,建议先导出备份,避免数据丢失。

convert to YAML

把编辑区转换成YAML格式。

Generate Server

把接口文档生成服务器文件,导出一个压缩包,接口文档生成java、js等服务器文件。很实用工具,让你写少很多代码。

导出spring-boot

导出nodeJS

Generate Client

生成查看接口文档。编写好下一步就是展示。这里可以选择导出什么格式的接口文档。

导出html

文档编写语法

文档是YAML语法来编辑,这里不解说。这里提供各字段的中文解释,大家应该看的懂。对语法不懂,请查看YAML语法 阮一峰

swagger: '2.0'                      # swagger的版本
info:
  title: 文档标题
  description:  描述
  version: "v1.0"                   # 版本号
  termsOfService: ""                # 文档支持截止日期
  contact:                          # 联系人的信息
    name: ""                        # 联系人姓名
    url: ""                         # 联系人URL
    email: ""                       # 联系人邮箱
  license:                          # 授权信息
    name: ""                        # 授权名称,例如Apache 2.0
    url: ""                         # 授权URL
host: api.haofly.net                # 域名,可以包含端口,如果不提供host,那么默认为提供yaml文件的host
basePath: /                         # 前缀,比如/v1
schemes:                            # 传输协议
  - http
  - https

securityDefinitions:                # 安全设置
  api_key:
    type: apiKey
    name: Authorization             # 实际的变量名比如,Authorization
    in: header                      # 认证变量放在哪里,query或者header
  OauthSecurity:                    # oauth2的话有些参数必须写全
    type: oauth2
    flow: accessCode                # 可选值为implicit/password/application/accessCode
    authorizationUrl: 'https://oauth.simple.api/authorization'
    tokenUrl: 'https://oauth.simple.api/token'
    scopes:
      admin: Admin scope
      user: User scope
      media: Media scope
  auth:
    type: oauth2
    description: ""                 # 描述
    authorizationUrl: http://haofly.net/api/oauth/
    name: Authorization             # 实际的变量名比如,Authorization
    tokenUrl:
    flow: implicit                  # oauth2认证的几种形式,implicit/password/application/accessCode
    scopes:
      write:post: 修改文件
      read:post: 读取文章

security:                           # 全局的安全设置的一个选择吧
  auth:
    - write:pets
    - read:pets

consumes:                           # 接收的MIME types列表
  - application/json                # 接收响应的Content-Type
  - application/vnd.github.v3+json

produces:                           # 请求的MIME types列表
  - application/vnd.knight.v1+json  # 请求头的Accept值
  - text/plain; charset=utf-8
tags:                               # 相当于一个分类
  - name: post  
    description: 关于post的接口

externalDocs:
  description: find more info here
  url: https://haofly.net

paths:                              # 定义接口的url的详细信息
  /projects/{projectName}:          # 接口后缀,可以定义参数
    get:
      tags:                         # 所属分类的列表
        - post  
      summary: 接口描述              # 简介
      description:                  # 详细介绍
      externalDocs:                 # 这里也可以加这个
        description:
        url:
      operationId: ""               # 操作的唯一ID
      consumes: [string]            # 可接收的mime type列表
      produces: [string]            # 可发送的mime type列表
      schemes: [string]             # 可接收的协议列表
      deprecated: false             # 该接口是否已经弃用
      security:                     # OAuth2认证用
        - auth: 
            - write:post
            - read: read
      parameters:                   # 接口的参数
        - name: projectName         # 参数名
          in: path                  # 该参数应该在哪个地方,例如path、body、query等,但是需要注意的是如果in body,只能用schema来指向一个定义好的object,而不能直接在这里定义
          type: string              # 参数类型
          allowEmptyValue: boolean          # 是否允许为空值
          description: 项目名        # 参数描述
          required: true            # 是否必须
          default: *                # 设置默认值
          maximum: number           # number的最大值
          exclusiveMaximum: boolean # 是否排除最大的那个值
          minimum: number           # number的最小值
          exclusiveMinimum: boolean
          maxLength: integer        # int的最大值
          minLength: integer
          enum: [*]                 # 枚举值
          items:                    # type为数组的时候可以定义其项目的类型
        - $ref: "#/parameters/uuidParam"   # 这样可以直接用定义好的
      responses:                    # 设置响应
        200:                        # 通过http状态来描述响应
          description: Success      # 该响应的描述
          schema:                   # 定义返回数据的结构
            $ref: '#/definitions/ProjectDataResponse'  # 直接关联至某个model

  /another: # 另一个接口
      responses:
        200:
            description:
            schema:
              type: object
              properitis:
                data:
                    $ref: '#/definitions/User' # 关联

definitions:            # Model/Response的定义,这里的定义不强制要求返回数据必须和这个一致,但是在swagger-ui上,会展示这里面的字段。
  Product:              # 定义一个model
    type: object        # model类型
    properties:         # 字段列表
      product_id:       # 字段名
        type: integer   # 字段类型
        description:    # 字段描述
      product_name:
        type: string
        description: 
  ProjectDataResponse:
    type: object
    properties:
        data:
            $ref: '#/definitions/ProjectResponse'  # model之间的关联,表示在data字段里面包含的是一个ProjectResponse对象
parameters:             # 可以供很多接口使用的params
  limitParam:
    name: limit
    in: query
    description: max records to return
    required: true
    type: integer
    format: int32
responses:              # 可以供很多接口使用的responses
  NotFound:
    description: Entity not found.

参考
Swagger官网:http://swagger.io/
Swagger Github:https://github.com/swagger-api
Swagger Editor在线demo:http://editor.swagger.io/#/
Swagger UI在线demo:http://petstore.swagger.io/

Windows 搭建swagger editor 和swagger ui 一,搭建swagger editor 要求:node.js环境 1,安装node.js 2, npm install; 3, git clone https://github.com/swagger-api/swagger-editor.git cd swagger-editor npm install npm run build npm start 4,然后就根据网址启动swag 阅读详情

相关推荐

swagger使用javascript sdk

由后台开发人员导出.yaml文件  在swagger edit里面File下导入  在Generate Client目录里面下载javascript包 解压并按照 readme文件 通过npm 进行本地打包并npm link 映射到相应的项目(需要使用管理员权限打包) 打包成功后 正常情况在在安装node的目录里面的node_module里面可以看到这个包  本机地址为: C:\Progr...

kinding的博客 932

Swagger Editor 教程

Swagger Editor 教程 文章目录Swagger Editor 教程一、swagger 是什么二、Swagger Editor1. Swagger Editor 简介2. 下载安装① 在线版② Windows 本地3. 具体使用步骤① 准备工作② 编写 yaml③ 服务端代码1)api_XX.go2)model_XX.go3)logger.go4) route.go 一、swagger 是什么 OpenAPI 是描述 REST API 的标准规范。 OpenAPI 描述允许人类和计算机无需首先阅

qq_43256905的博客 4246

Swagger 这一个文章就够了

Swagger快速理解 Swagger:The Best APIs are Built with Swagger Tools 。Swagger可以定义一个标准的RESTful风格的API,与语言无关,是一个API的规范。 Swagger官网:http://swagger.io GitHub地址:https://github.com/swagger-api 这里,提到Swagger就不得不说说Springfox,Springfox是一个开源的API Doc的框架, 它的前身是swagger-springmvc

Criss@陈磊 466

Swagger Editor编写

Swagger Editor编写一、Swagger Editor编辑器1.在线编写2.IDEA安装插件3.两种方式优缺点二、语法规则1.字段类型与格式定义三、示例说明1.编写get-yaml示例1.1可视化界面2.编写post-yaml示例2.1可视化界面 一、Swagger Editor编辑器 1.在线编写 https://editor.swagger.io/ 其是官方提供的编写swagger yaml文件的在线编辑器,且可以实时看见编写的yaml文件的可视化页面 2.IDEA安装插件 在插件库中搜索sw

tiki的博客 2625

从SolidWorks到Simscape:URDF导出模型错位的5个常见原因及修复方法

本文深入分析了从SolidWorks导出URDF模型到Simscape时出现模型错位的5个常见原因,包括坐标系定义、RPY角陷阱、轴方向统一、质量属性导出和层次结构错乱,并提供了详细的修复方法和实战技巧,帮助工程师高效解决模型错位问题。

weixin_30664051的博客 440

从Peer到脉冲地震波:免费Python工具全流程配置教程(PyCharm+Anaconda)

本文详细介绍了如何使用Python工具链(PyCharm+Anaconda)实现从Peer数据库获取地震波数据到生成脉冲地震波的全流程配置。通过开源工具EQTOOL和PySeismicGen,结合Python环境搭建、数据格式转换和脉冲地震动生成技术,为结构抗震分析提供高效、灵活的解决方案。

weixin_29093169的博客 430

Swagger Editor 教程:从入门到精通编写 API 文档

OpenAPI 规范(曾名为 Swagger 规范)作为一套广泛认可的 API 描述标准,包含了 API 的路径、参数、请求体、响应内容等信息。它是从 Swagger 发展而来,目前已获得广泛的行业支撑。标准化的描述语言:利用 YAML 或JSON描述 API 细节,包括路径、参数、请求与响应等。动态文档:可以自动生成 API 文档,支持在线测试和调试API。高可扩展性:支持添加自定义属性以满足特定业务需求。多语言支持:能够对接多种编程语言的代码生成工具。

YLF123456789000的博客 1439

Python 高级语法:闭包

闭包(Closure)是函数式编程中的一个重要概念。在Python中,闭包可以简单理解为:一种特殊的函数。外函数:嵌套函数中最外层的函数称之为外函数。内函数:嵌套函数中最内层的函数称之为内函数;内函数引用了外函数的临时变量;外函数的返回使用了临时变量的内函数。

moment159的博客 2353

Swagger Editor教程

Swagger是一个简单但功能强大的API表达工具,是目前现有的最大API工具生态系统。使用Swagger生成API,我们可以得到交互式文档,自动生成代码的SDK以及API的发现特性等。 安装 Windows上的安装 1、首先需要安装node和npm。你可以在cmd命令行看到你的安装信息。使用命令node -v和npm -v,可以用来查看版本信息。 2、安装后,还需要安装http-server。使...

benben的博客 2万+

一个开源的AI数据分析工具,与数据对话,一键生成SQL、图表、表格、报告和智能商业分析。

Wren AI是一个开源的AI智能代理,让用户能够跟数据对话,实现从文本到SQL的转换,还能生成图表、电子表格、报告以及商业智能分析。它支持多种语言,能深入挖掘数据价值,提供智能数据探索功能,通过语义索引和精心设计的界面,让用户无需写代码即可获取洞察。Wren AI采用独特的架构,包含Wren UI、Wren AI Service和Wren Engine三大核心服务,可部署在本地或云端,助力团队高效、安全地解锁数据潜力。

AI_Charlotte的博客 4491

fatal: unable to access ‘https://github.com/xxx.git/‘ OpenSSL SSL_connect: SSL_ERROR_SYSCALL 解决方案

 本文主要介绍了fatal: unable to access ‘https://github.com/xxx.git/’: OpenSSL SSL_connect: SSL_ERROR_SYSCALL in connection to github.com:443解决方案,希望能对使用git的同学们有所帮助。 文章目录 1. 问题描述 2. 解决方案

weixin_43178406的博客 24万+

swagger editor java_swagger editor使用总结

1.使用界面预览:2.安装教程:先到git下载:https://github.com/swagger-api/swagger-editor;然后直接打开index.html 或者如上图创建一个服务器,访问该项目;然后就可以看到如1中的效果了。具体使用教程可以参考3.3.使用教程:Swagger是一种Rest API的 简单但强大的表示方式,标准的,语言无关,这种 表示方式不但人可读,而且机器可读。...

weixin_36403165的博客 944

A2B V1.0协议学习笔记(A2B System Specification V1.0)

A2B全称是 Automotive Audio Bus 汽车音频总线,主要是解决传统音频总线线多、线重、成本贵等问题。本文是以A2B V1.0规范为准,现在ADI又推出了A2B V2.0,物理层不兼容,采用了QPSK编码方式,后续有时间再更新。A2B总线的优点:支持1主多从的架构(最多10个子节点)支持50Mbps(具体是49.152 Mbps)的高带宽传输以及

qflook的博客 4424

swagger 导出离线文档_Swagger 详解

Swagger快速理解Swagger:The Best APIs are Built with Swagger Tools 。Swagger可以定义一个标准的RESTful风格的API,与语言无关,是一个API的规范。Swagger官网:http://swagger.ioGitHub地址:https://github.com/swagger-api这里,提到Swagger就不得不说说Springf...

weixin_42180863的博客 2971

Python学习第1天:初识Python

Python 作为目前最流行的编程语言之一,凭借其简洁优雅的语法和强大的生态系统,成为了无数开发者的首选。本系列文章将带你从零基础入门,逐步掌握 Python 编程的核心技能。今天我们先来认识 Python,并安装好开发环境。Python(英式发音:/ˈpaɪθən/;美式发音:/ˈpaɪθɑːn/)是由荷兰人吉多·范罗苏姆(Guido von Rossum)发明的一种编程语言,是目前世界上最受欢迎和拥有最多用户的编程语言。

tigerhhzz的博客 432

别再被 SerialPort 坑了!C# 串口通信的 3 大隐形陷阱与工业级解决方案

NET的SerialPort类更适合实验室调试,而非工业现场——它的设计目标是“能用”,而非“稳定”。工业级串口通信的核心,是在SerialPort基础上构建一层“防护壳”,用主动轮询对抗事件失效,用硬件级操作解决缓冲区谎言,用原子性流程避免关闭死锁。本文提供的类已在30+工业项目中验证(包括汽车生产线、智能仓储、环境监测),可直接替换原生SerialPort,解决90%以上的“玄学问题”。记住:工业场景的“稳定”,从来都不是靠运气,而是靠对每个细节的偏执把控。

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 743

swagger editor java_Swagger工具组件Swagger-editor的介绍及使用

1、Swagger-editor介绍Swagger-editor 主要用于编写符合 Swagger 规范的 RESTful API 文档,即编写 Swagger 文档。Swagger-editor 是一个编辑器,可编写 Swagger 文档,来准确描述 API 信息。Swagger-editor 可采用两种语法风格:YAML 语法JSON 语法当然,不使用 Swagger-editor 也可以,你...

weixin_35619710的博客 815

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

下载并安装Swagger-ui和Swagger-edit

下载并安装Swagger-ui和Swagger-edit 1. github上下载好Swagger-ui和Swagger-edit文件 https://github.com/swagger-api/swagger-ui https://github.com/swagger-api/swagger-editor   2. 在本地解压   3. 下载好node以及npm,在cmd中确认下载成功 4. 进入node下载目录,输入:npm install -g http-server&nbsp

weixin_44722773的博客 1881

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

Swagger/Swagger Editor 3

参考狂神 [狂神说SpringBoot14:集成Swagger终极版 SpringBoot集成swagger 目录 SpringBoot集成swagger 配置Swagger 配置扫描接口 配置Swagger开关 配置API分组 实体类测试 新建springboot项目,记得选上 web项目呢 导入依赖 <dependency> <groupId>io.springfox</groupId> ...

m0_56816395的博客 367

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

swagger editor java_Swagger Editor与Swagger-UI神器使用

前言在没有产品经理或者项目经理的情况下,对于前端和后端打交道来说,无非就是对接口的争争吵吵,字段多多少少的事。大多时候前端都喜欢直接使用后端提供的接口,而后端有时候却不知道前端到底要什么数据,就这样,Swagger这样的神器被我找到了,对于Swagger高级的应用,比如集成到IDE中自动生成文档,今天就不废话了,我主要想说的是怎么用Swagger Editor和UI进行接口对接。折腾Swagger...

weixin_33694136的博客 319

go restful 生成 swagger 2.0 文档

什么是swagger Swagger 允许您描述 API 的结构,以便机器能够读取它们。Swagger 所有能力中最卓越的是 api 描述自身结构的能力。为什么他这么棒?通过阅读API的结构,我们可以自动构建漂亮的交互式 API 文档。我们还可以用多种语言为您的 API 自动生成服务端库,并探索其他可能性,比如自动化测试。Swagger 通过请求 API 返回包含整个 API 详细描述的 YAML...

s7799653的博客 1859

go-swagger 注解指南:用 swagger:meta 从 Go 源码生成 Swagger 2.0 规范元数据

`swagger:meta` 是 go-swagger 中最基础的源码注解之一,它把包级文档注释声明为整个 API 元数据的唯一来源:标题、描述、协议、Host、BasePath、消费/生产类型乃至自定义 vendor extension 都在这里定义。读完本文,你将掌握 `swagger:meta` 的完整语法、全部属性及它们在生成 Swagger 2.0 规范(spec)时的映射关系,并能结合

gitblog_00221的博客 195

使用 go-swagger 为 Swagger 2.0 服务端接入 API Key 认证:从 securityDefinitions 到 handler 实现全流程

本文是一篇面向 go-swagger 使用者的实战指南,基于仓库文档 [docs/tutorial/authentication.md](https://link.gitcode.com/i/62d55dc86a9ab3331465485910751bd7) 展开,完整演示如何在 Swagger 2.0 规范文档中声明 `apiKey` 类型的安全方案、在生成服务端代码时注入自定义 princip

gitblog_01154的博客 359
上一篇: Swagger UI安装与使用教程
下一篇: Swagger
JarunWang
博客等级 码龄18年 57粉丝 61原创
评论 8
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值