当前位置:网站首页 > 技术博客 > 正文

配置openjdk



OpenAPI 是一种与语言无关且独立于平台的规范,用于标准化 REST API。OpenAPI 使用户能够在不深入代码的情况下轻松理解 API。

Swagger-UI 根据 OpenAPI 规范生成可视化文档,帮助可视化和测试 REST API。

本文将带你了解如何在 Spring Boot 应用中使用 Springdoc-OpenAPI 生成 OpenAPI 文档、测试 REST API 并为 OpenAPI 配置 JWT Authentication(认证)。

Swagger-UI 是 HTML、Javascript 和 CSS 文件的集合,可根据 OpenAPI 规范生成 UI 界面。

当 API 数量不断增加时,编写 OpenAPI 文档规范就变得非常具有挑战性。Springdoc-OpenAPI 可以帮助我们自动生成 OpenAPI 文档。

接下来,我们通过示例了解如何使用 Springdoc-OpenAPI 库自动生成 REST API 的 OpenAPI 文档,并使用 Swagger-UI 可视化这些 API。

首先,添加 Springdoc-OpenAPI 依赖。

此依赖还将 web-jar 添加到 Spring Boot 应用中。

启动应用,打开浏览器访问:。

你可以看到 Swagger-UI 页面:

Swagger UI 主页

文档可以通过 访问。

使用 为 API 添加说明、服务条款和其他元信息:

还可以将配置和元信息定义在 或 文件中,如:、 和 。

启动应用,并打开 Swagger-UI::

swagger 配置页面

可以通过 访问OpenAPI 文档:

接着,为 OpenAPI 配置基于 JWT 认证。

我们可以按 API、类或全局级别配置 OpenAPI 的 JWT 认证。

声明 JWT 认证只用于特定 API。

定义配置如下:

@SecurityScheme 注解将 securitySchemes 添加到 OneAPI 规范的 components (组件)部分。 定义了 API 可以使用的安全机制。支持的安全机制有 APIKey、HTTP Authentication(Basic 和 Bearer)、OAuth2 和 OpenID Connect。

在本例中,使用 HTTP Bearer Authentication 作为安全方案。

对于基于 HTTP Bearer Token 的认证,我们需要选择安全方案为 ,bearer 格式为 JWT

对于 API 级认证,在 API 上使用 注解:

配置完毕后,重启应用。访问 URL :

Swagger API

单击 “🔒” 图标会打开一个登录对话框,让用户提供访问 Token 以调用 API:

Swagger 登录对话框

在本例中,可以通过向 Authentication API 提供 或 j 来获取 JWT Token。获取 JWT Token 后,将其输入文本框,然后点击 “Authorize” 按钮和 “Close” 按钮。

Swagger 授权对话框

有了 JWT Token,就可以调用删除用户 API 了:

删除用户 API

如上,你可以看到 Swagger-UI 将此 Token 作为 HTTP Bearer 提供给 Authorization Header。最后,成功地调用了受保护的 API。

也可以为一个类中的所有 API 提供 OpenAPI 认证。

在包含所有 API 的类上声明 注解,为该类中的所有 API 提供认证:

假设该类有两个 API,在 Swagger-UI 中看起来就像这样:

Swagger API

通常情况下,我们更倾向于将 OpenAPI 认证应用于应用中的所有 API。

我们可以使用 Spring 注解声明全局级别的安全配置:

如上,Springdoc-OpenAPI 就能为应用中的所有 OpenAPI 配置 JWT 认证

Swagger 全局认证

尝试调用 GET API:

Swagger API 401 响应

API 返回了 “HTTP 401 Unauthorized。API”,这是因为未提供 Token,API 是受保护的。接下来,提供 JWT Token 并重新发起请求。

点击 “Authorize” 按钮并提供 JWT Token 以调用 API。我们可以从 swagger 控制台中提供的 Authentication API 获取 Bearer Token:

Swagger 获取 Bearer Token

配置好 JWT Token 后,重新调用 API:

Swagger 调用 API

此时,有了正确的 JWT Token,就可以成功调用受保护的 API 了。

本文介绍了如何为 OpenAPI 配置 JWT 认证。Swaggerdoc-OpenAPI 基于 Spring Boot 应用中的 REST API 生成 OneAPI 规范。Swagger-UI 可以根据 OneAPI 规范对 REST API 生成文档和进行测试。


参考:

版权声明


相关文章:

  • 上网时间流量监控2025-07-02 15:30:04
  • java中网络编程的步骤2025-07-02 15:30:04
  • 运维需要掌握的技术2025-07-02 15:30:04
  • c语言结构体变量的初始化和引用2025-07-02 15:30:04
  • 自动化测试怎么实现2025-07-02 15:30:04
  • 在数据库设计中组成e-r图的成分有2025-07-02 15:30:04
  • azw3与epub与mobi有什么区别2025-07-02 15:30:04
  • pyinstaller 反编译2025-07-02 15:30:04
  • 分布式拒绝服务攻击和拒绝服务攻击2025-07-02 15:30:04
  • 代码对比工具下载2025-07-02 15:30:04