Swagger UI 简介


Swagger UI允许任何人(无论您是开发团队还是最终用户)都可以可视化API资源并与之交互,而无需任何实现逻辑。它是根据您的OpenAPI(以前称为Swagger)规范自动生成的,具有可视化文档,可简化后端实现和客户端使用。

SwaggerUI 特点
无依赖 UI可以在任何开发环境中使用,无论是本地还是在Web端中。
人性化 允许最终开发人员轻松地进行交互,并尝试API公开的每个操作,以方便使用。
易于浏览 归类整齐的文档可快速查找并使用资源和端点。
所有浏览器支持 Swagger UI 在所有主要浏览器中均可使用,以适应各种可能的情况。
完全可定制 通过完整的源代码访问方式以所需方式设置和调整Swagger UI。
完整的OAS支持 可视化Swagger 2.0或OAS 3.0中定义的API。
前后端分离

Vue + SpringBoot
后端时代:前端只用管理静态页面; html==》后端。 模版引擎 JSP=>后端是主力

前后端分离时代:

后端:后端控制层、服务层、数据访问层 【后端团队】
前端:前端控制层、视图层 【前端团队】
伪造后端数据,json。在后端开发前数据以及存在,不需要后端,前端工程师依旧能将项目跑起来。
前后端如何交互? ==>API
前后端相对独立,松耦合;
前后端甚至可以部署在不同的服务器上。
产生一个问题

前后端集成联调,前端人员和后端人员无法做到 “及时协商,尽早解决”,最终导致问题集中爆发;
解决方案:

首先指定schema[计划的提纲],实时更新最新的API,降低集成的风险。
早些年,制定Word计划文档
前后端分离:
前端测试后端接口使用:Postman工具。
后端提供接口:需要实时更新最新改动和消息。
Swagger登场
号称世界上最流行的API框架。
Restful API文档在线自动生成工具 API文档与API定义同步更新。
直接运行,可以在线测试API接口。
支持多种语言 如:Java 、PHP…
官网
https://swagger.io/

在项目只能使用SwaggerUI
需要使用Springfox,配置的组件有

Swagger 2
UI 显示页面

转载链接:https://blog.csdn.net/zhanshixiang/article/details/104605292

API(Application Programming Interface) 翻译过来是应用程序编程接口的意思。

我们在进行后端开发的时候,主要的工作就是为前端或者其他后端服务提供 API 比如查询用户数据的 API 。

但是, API 不仅仅代表后端系统暴露的接口,像框架中提供的方法也属于 API 的范畴。

为了方便大家理解,我再列举几个例子 :

  1. 你通过某电商网站搜索某某商品,电商网站的前端就调用了后端提供了搜索商品相关的 API。
  2. 你使用 JDK 开发 Java 程序,想要读取用户的输入的话,你就需要使用 JDK 提供的 IO 相关的 API。
  3. ……

你可以把 API 理解为程序与程序之间通信的桥梁,其本质就是一个函数而已。另外,API 的使用也不是没有章法的,它的规则由(比如数据输入和输出的格式)API 提供方制定。

何为 RESTful API?

RESTful API 经常也被叫做 REST API,它是基于 REST 构建的 API。这个 REST 到底是什么,我们后文在讲,涉及到的概念比较多。

如果你看 RESTful API 相关的文章的话一般都比较晦涩难懂,主要是因为 REST 涉及到的一些概念比较难以理解。但是,实际上,我们平时开发用到的 RESTful API 的知识非常简单也很容易概括!

举个例子,如果我给你下面两个 API 你是不是立马能知道它们是干什么用的!这就是 RESTful API 的强大之处!

GET    /classes:列出所有班级
POST /classes:新建一个班级
 

RESTful API 可以让你看到 URL+Http Method 就知道这个 URL 是干什么的,让你看到了 HTTP 状态码(status code)就知道请求结果如何。

像咱们在开发过程中设计 API 的时候也应该至少要满足 RESTful API 的最基本的要求(比如接口中尽量使用名词,使用 POST 请求创建资源,DELETE 请求删除资源等等,示例:GET /notes/id:获取某个指定 id 的笔记的信息)。

转载连接:https://javaguide.cn/system-design/basis/RESTfulAPI.html#%E4%BD%95%E4%B8%BA-restful-api

Swagger UI、RESTful简介的更多相关文章

  1. SpringMVC+JWT+Swagger UI+RestFul

    前言: 其实很早就想写这篇文章了,因为我觉得这会对很多新手有指引作用,当初自己也是瞎子过河的摸索着过来的.目前后台开发比较流行的MVC框架中使用Spring MVC还是比较多的,当然还有Spring ...

  2. gRPC helloworld service, RESTful JSON API gateway and swagger UI

    概述 本篇博文完整讲述了如果通过 protocol buffers 定义并启动一个 gRPC 服务,然后在 gRPC 服务上提供一个 RESTful JSON API 的反向代理 gateway,最后 ...

  3. 使用 Swagger UI 与 Swashbuckle 创建 RESTful Web API 帮助文件

    作者:Sreekanth Mothukuru 2016年2月18日 本文旨在介绍如何使用常用的 Swagger 和 Swashbuckle 框架创建描述 Restful API 的交互界面,并为 AP ...

  4. 使用 Swagger UI 与 Swashbuckle 创建 RESTful Web API 帮助文件(转)

    作者:Sreekanth Mothukuru2016年2月18日 本文旨在介绍如何使用常用的 Swagger 和 Swashbuckle 框架创建描述 Restful API 的交互界面,并为 API ...

  5. Spring Boot 集成 Swagger 生成 RESTful API 文档

    原文链接: Spring Boot 集成 Swagger 生成 RESTful API 文档 简介 Swagger 官网是这么描述它的:The Best APIs are Built with Swa ...

  6. ABP框架 - Swagger UI 集成

    文档目录 本节内容: 简介 Asp.net Core 安装 安装Nuget包 配置 测试 Asp.net 5.x 安装 安装Nuget包 配置 测试 简介 来自它的网页:“...使用一个Swagger ...

  7. Swagger: 一个restful接口文档在线生成+功能测试软件

    一.什么是 Swagger? Swagger 是一款RESTFUL接口的文档在线自动生成+功能测试功能软件.Swagger 是一个规范和完整的框架,用于生成.描述.调用和可视化 RESTful 风格的 ...

  8. Swagger UI 与SpringMVC的整合 II

    pom.xml <!-- swagger开始 --> <dependency> <groupId>io.springfox</groupId> < ...

  9. Yii2+Swagger搭建RESTful风格的API项目

    在现有的Advanced Template上搭建RESTful API项目的步骤: 本案例前提说明: 本例中不使用\yii\rest\ActiveController自动创建的API,而是自定义一个A ...

  10. swagger ui和spring boot集成生成api文档

    作者:小莫链接:https://www.zhihu.com/question/28119576/answer/134580038来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明 ...

随机推荐

  1. 一个docker容器中只运行一个Service

    基于单一原则,一个容器里只运行一个主进程,即一个service(进程)做成一个docker镜像.多个进程在一个容器里有很多弊端,比如一个主进程更新时,其他进程也被迫重启.容器=应用+执行应用的环境 而 ...

  2. CF980-Div2-D

    CF980-Div2-D 题意 从 \(1\) 开始决策,若选当前数,则累计贡献 \(a[i]\) 并跳到 \(j\) 位置,\(j\) 是 \(\lt i\) 且没有决策过(包括选了和没选)的最大位 ...

  3. 对于特定的游戏问题使用启发式算法可以取得比AI算法更好的表现

    相关: Using A.I. to DOMINATE NERDS in TETRIS 有些问题的求解可以通过建模将其转换为强化学习问题,然后再使用强化学习算法对其进行求解,但是很多问题如果不建模为强化 ...

  4. Codeforces 983 A-E

    题解 A 难度:黄 算法标签:数学.进制 题目翻译:给定进制 \(b\) 和分数 \(\frac{p}{q}\),求这个分数在 \(b\) 进制下是否是有限小数. 题目分析: 首先将分数化简(不用说了 ...

  5. html代码新手教学

    HTML 是超文本标记语言(HyperText Markup Language)的缩写,是用来描述网页结构的标记语言.在这篇教学中,我们将介绍一些 HTML 基础知识,帮助新手快速学习并掌握如何编写简 ...

  6. NZOJ NOIP模拟赛1

    T1 好数 设ctz(x)为x二进制下末尾0的个数,如ctz(1001000)=3. 设ppc(x)为x二进制下1的个数,如ppc(1001000)=2. 定义一个数是好数,当且仅当ctz(x)=pp ...

  7. 国产数据库oceanBbase,达梦,金仓与mysql数据库的性能对比 一、比对方法和结果

    最近调研了三款国产化数据库与mysql做对比,调研主要性能指标是大数据写入速度.大数据读取速度以及是否支持分表. 一.测试结果 测试结果与预期的差别很大     1.先说oceanBase社区版这款数 ...

  8. 读书笔记-C#8.0本质论-03

    15. 委托和lambda表达式 15.1 委托概述 namespace ConsoleApp1; internal static class Program { private enum SortT ...

  9. Python3.6,3.7,3.8版本对比

    本文列举了Python3.6.3.7.3.8三个版本的新特性,学习它们有助于提高对Python的了解,跟上最新的潮流. 一.Python3.6新特性 1.新的格式化字符串方式 新的格式化字符串方式,即 ...

  10. Redis迁移工具之Redis-shake

    Redis-shake is a tool for synchronizing data between two redis databases. Redis-shake是一个用于在两个redis之间 ...