如何为 springdoc swagger-ui HTML 页面配置自定义 URL?

2024-01-05

将 springdoc-openapi-ui 依赖项添加到我的 Spring 项目(不是 Spring Boot)后,将生成 OpenAPI V3 文档,并且可以使用默认的 swagger-ui 页面查看:localhost:8080/swagger-ui.html。因为 springdoc 文档取代了以前的 Swagger 文档,所以我想在相同的 URL 上提供它,localhost:8080/docs/index.html。根据 springdoc 文档,我的印象是可以通过使用来完成springdoc.swagger-ui.path选项中的application.properties:

springdoc.swagger-ui.path=/docs/index.html

但是,我希望能够通过以下方式导航到 API 文档:localhost:8080/docs/index.html我得到的是 404,localhost:8080/swagger-ui.html仍然有效,但现在重定向到http://localhost:8080/docs/swagger-ui/index.html?configUrl=/restapi/v3/api-docs/swagger-config.

我如何配置我的项目,使 swagger-ui 页面通过自定义 URL 可用,即localhost:8080/docs/index.html而不是默认的localhost:8080/swagger-ui.html?

Edit

在尝试更多让它工作并查看在线可用信息(例如 springdoc)之后FAQ https://springdoc.org/faq.html#how-to-integrate-open-api-3-with-spring-project-not-spring-boot(在this https://stackoverflow.com/a/68470670/14823855H3AR7B3A7 的回答)我无法让它工作。我决定采用不同的解决方案,它应该具有相同的效果。这springdoc.swagger-ui.path选项允许指定自定义 URL,但据我了解,转到自定义 URL 会将用户重定向到标准localhost:8080/swagger-ui.html页。所以现在手动配置重定向:

@RequestMapping("/docs/index.html")
public void apiDocumentation(HttpServletResponse response) throws IOException {
  response.sendRedirect("/swagger-ui.html");
}

显然,该库仅与您在评论中提到的 spring-boot 应用程序原生集成。 如果你想使用 spring,这是可能的,但集成细节没有记录,因为它实际上取决于版本/模块和 spring 应用程序的性质。

您可以检查FAQ https://springdoc.org/faq.html#how-to-integrate-open-api-3-with-spring-project-not-spring-boot看看它是否能回答您的问题。

还有一些答案这里就这样 https://stackoverflow.com/questions/59871209/how-to-integrate-open-api-3-with-spring-project-not-spring-boot-using-springdo/59880655#59880655.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何为 springdoc swagger-ui HTML 页面配置自定义 URL? 的相关文章

随机推荐

  • XML 文件中的条件替换

    我正在使用 PowerShell 递归地替换 XML 文件中的文本 该脚本在替换时工作正常 但是 XML 文件也有不应替换的文件路径 这是当前正在使用的脚本 if content match web site web site conten
  • 线性规划优化和梯度下降优化之间有什么区别?

    在线性规划问题中 我们制定两个线性函数和一个优化函数 我们找到两个线性函数相交的点 并将这些值替换到优化函数中以获得最大值或最小值 这与梯度优化有什么不同 任何人都可以从数学上详细说明这一点 两种方法都达到全局最大值或最小值吗 哪个更好 线
  • 了解稳定基线模型中的total_timesteps参数

    我正在阅读原版PPO纸 https arxiv org pdf 1707 06347 pdf并尝试将其与输入参数相匹配稳定基线 PPO2 https stable baselines readthedocs io en master mod
  • 需要帮助:“错误的架构”导致应用程序在 iOS 7 中启动时崩溃,但在 iOS 8 中运行良好

    我的应用程序在 iOS 7 1 中启动时崩溃 但在 iOS 8 1 中运行良好 我得到的错误是这样的 dyld 库未加载 System Library Frameworks AVKit framework AVKit 参考自 MY APP原
  • WorkManager google api:每个定期工作程序执行等待 15 分钟?

    有没有办法测试PERIODICWorkManager Google API 的工作人员无需每次执行等待至少 15 分钟 我的意思是 它是一个调试应用程序 我通过 Android Studio 运行它 我不想等待这么长时间来测试我的功能 Yo
  • Python 中的 R group_by() + rleid() 等效项

    我在 Python 中得到了以下数据框 df pd DataFrame from dict measurement id np repeat 1 2 6 6 min np concatenate np repeat 1 2 3 2 2 2
  • 我如何使用 Linq 查询计数。查询中的记录数

    var emailToProcess from a in db EmailNotToProcess join b in EmailUids on a ENTPUId equals b Uid where a ENTPUId b Uid se
  • 从另一个组件访问变量/函数

    所以我试图通过触摸立方体来更改另一个脚本中的变量 当前设置 1x 玩家 1x 敌人 每个人都有自己的剧本Enemy Stats Character Stats正如您在这个小片段中看到的 从另一个脚本访问变量是一个很好的解决方法 void O
  • Ruby 中的枚举器作为无限生成器

    我正在阅读一份资源 解释如何将枚举器用作生成器 例如 triangular numbers Enumerator new do yielder number 0 count 1 loop do number count count 1 yi
  • Android Things:连接到 Raspberry Pi 3

    完全新手 我有一个树莓派并已将安卓事物磁盘映像并启动它 但我无法从Windows10台电脑运行安卓工作室 adb exe通过以太网还是USB 这Pi屏幕上有一个绿色和灰色的 androidthings 标志 但上面写着 未连接 如果我连接
  • 将布局从 networkx 传输到 cytoscape

    我想使用 networkx 生成图形的布局 是否可以将此布局转移到细胞景观 http www cytoscape org 并把它画在那里 我试图简单地写一个图表 import networkx as nx G nx Graph G add
  • 设置 WSO2 EMM

    我正在尝试设置 WSO2 EMM V2 0 1 我能够在我的实时服务器上进行设置并遵循此处提供的所有说明WSO2 入门 https docs wso2 com display EMM201 Getting Started直到我到达配置And
  • PHP读取txt文件并检查用户名密码是否存在

    我有一堆密码和用户名存储在一个 txt 文件中 我需要检查是否匹配 我知道这不是一个安全的方法 但它是为了学习的目的 此代码将用户名和密码写入 txt 文件 if isset POST register user POST username
  • 碲与硒:比较

    我使用硒有一段时间并且做得很好 我想尝试一下碲 搜索并发现只有很少的问题 我想了解以下内容 使用碲的主要优点是什么 Selenium Groovy 有什么不同 Tellurium 是 Selenium 的 DSL 领域特定语言 它是为了让
  • 如何将 javascript 设置样式属性返回到 CSS 默认值

    我正在尝试弄清楚如何在使用 javascript 更改样式属性后恢复为样式表中的值 包括单位 在下面的示例中 我希望输出为100px CSS 中的值 而不是10px as getComputedStyle gives 我还将虚拟 div 保
  • Linux 上的 Emacs/xterm 颜色烦恼

    我在本地 Linux 机器和远程集群的登录节点上的控制台窗口中使用 emacs 我经常使用 emacs 并且在 emacs 文件中将前景色设置为白色 如下所示 set foreground color white set backgroun
  • AppCompatDelegate 无法实例化自定义视图充气器 android.support.v7.app.AppCompatViewInflater

    当获取发布 apk 时 我在应用程序的所有活动中收到此错误日志 04 03 17 10 54 105 26527 26527 I AppCompatDelegate Failed to instantiate custom view inf
  • 不超过两个重复字母/数字的正则表达式

    我需要处理 XSL 文件中不超过两个相同字母 数字的正则表达式 no space 不支持特殊字符 支持 a z A Z 0 9 需要 a z 之一 需要 0 9 之一 不超过 2 个相同的字母 数字 即BBB将失败 BB被接受 到目前为止我
  • 是否可以在 WordPress 中测试空术语或类别?

    我有一个项目 要求我列出每个自定义帖子类型的可用术语 并通过 css javascript 直观地指示哪些术语 类别为空 有没有办法返回术语 类别列表并说向空的类别添加一个类 感谢您提供的所有帮助 就在这里 首先 您使用以下方式获取条款获取
  • 如何为 springdoc swagger-ui HTML 页面配置自定义 URL?

    将 springdoc openapi ui 依赖项添加到我的 Spring 项目 不是 Spring Boot 后 将生成 OpenAPI V3 文档 并且可以使用默认的 swagger ui 页面查看 localhost 8080 sw