Springfox swagger-ui 3.0.0 不显示 swagger-ui.html 页面

2023-12-31

我将 springfox swagger-ui 与 Springboot 结合使用,但未启用分段上传的 fileUpload 按钮。我尝试升级到 springfox-swagger-ui 3.0.0,但这甚至没有打开 swagger-ui 页面。有什么办法可以获取文件上传按钮吗?

我的 API 调用如下所示:

@RequestMapping(value = "/foo", method = RequestMethod.POST, consumes = MediaType.MULTIPART_FORM_DATA_VALUE)

public ResponseEntity<ByteArrayResource> method(@RequestParam("file") MultipartFile file, @RequestParam("id") String id) {

.... }

Current issue with springfox-swagger-ui 2.10.5 Upload file button missing

    My pom.xml is : 
    <properties>
      <java.version>1.8</java.version>
      <io.springfox.version>3.0.0</io.springfox.version>
    </properties>
    <dependency>
    <groupId>io.springfox</groupId>
    <artifactId>springfox-swagger2</artifactId>
    <version>${io.springfox.version}</version>
    </dependency>
    <dependency>
    <groupId>io.springfox</groupId>
    <artifactId>springfox-swagger-ui</artifactId>
    <version>2.10.5</version>
    </dependency>
    <dependency>
    <groupId>io.springfox</groupId>
    <artifactId>springfox-data-rest</artifactId>
    <version>${io.springfox.version}</version>
    </dependency>

    <dependency>
    <groupId>io.springfox</groupId>
    <artifactId>springfox-boot-starter</artifactId>
    <version>${io.springfox.version}</version>
    </dependency>

From: http://springfox.github.io/springfox/docs/current/#migration-from-existing-2-x-version http://springfox.github.io/springfox/docs/current/#migrating-from-existing-2-x-version

有一些事情需要做:

1. 将 springfox-boot-starter 添加到 POM ,从 POM 中删除旧的依赖项: springfox-swagger2 和 springfox-swagger-ui

    <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-boot-starter</artifactId>
            <version>3.0.0</version>
</dependency>

2.去掉@EnableSwagger2注解

@Configuration
// remove @EnableSwagger2
public class SwaggerConfig {

    @Bean
    public Docket api() {
    return new Docket(DocumentationType.SWAGGER_2).select()
        .apis(RequestHandlerSelectors.basePackage(UserManagementImpl.class.getPackage().getName()))
        .paths(PathSelectors.any()).build();
    }
}

3.根据请求使用@RequestPart("files")

@ApiOperation(value = "files", notes = "upload user emails from CSV and email content from json and send out")
    @PostMapping(path = "/users/uploadUserEmailsAndSend", consumes = { "multipart/form-data" })
    @ResponseBody
    ResponseEntity<UploadUsersResDTO> uploadUserEmailsAndSend(@RequestPart("files") MultipartFile[] filesUpload){

    CSVParser csvParser = null;
    BufferedReader fileEmailsReader = null;
    BufferedReader fileEmailMessageReader = null;
    MultipartFile fileCSV = null;
    MultipartFile fileJson = null;

    try {
        if (filesUpload[0].getOriginalFilename().toLowerCase().endsWith("csv")) {
            fileCSV = filesUpload[0];
            fileJson = filesUpload[1];
        } else {
            fileCSV = filesUpload[1];
            fileJson = filesUpload[0];
        }
        // more codes ....
}

4.访问swagger:http://localhost:8080/swagger-ui/

5. 最后:您应该转向 OpenAPI (https://springdoc.org/ https://springdoc.org/)

OpenAPI 在 swagger 上是顶级的,所以如果你使用 Spring boot,OpenAPI 配置比 Springfox 简单得多。

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

Springfox swagger-ui 3.0.0 不显示 swagger-ui.html 页面 的相关文章

随机推荐

  • 詹金斯后期构建步骤和操作 - 有什么区别

    听起来可能是一个非常基本的问题 但我找不到任何文章可以解释为什么 Jenkins 提供构建后步骤和操作 在詹金斯 我确实看到构建后步骤与操作中的选项是不同的 但是 执行顺序是什么 我们什么时候应该使用哪个选项 最佳实践是什么 乍一看 这是
  • 了解网格列属性

    我最近回答了一个关于 CSS 网格的问题 但在我的回答中 我使用了一种有效的风格 但与我认为的标准方式相反 看看下面的代码片段 红细胞具有以下样式 grid column 3 4 grid width 200px display grid
  • 有没有办法在 Firefox 中将 HTML5 Gamepad API 与多个窗口或选项卡一起使用?

    我正在设计一个应用程序 该应用程序使用 HTML5 游戏手柄 API 来利用游戏手柄的输入 我的应用程序可以在 Firefox 和 Chrome 中运行 但是 Firefox 似乎不允许在前一个选项卡访问游戏手柄后第二个窗口或选项卡访问游戏
  • 有效获取elasticsearch索引中的所有文档

    我想从 Elasticsearch 集群中的所有匹配查询中获取所有结果 我不关心结果是否是最新的 也不关心顺序 我只想稳步地继续检查所有结果 然后从头开始 滚动和扫描最适合这种情况吗 拍摄我不需要的快照似乎有点麻烦 我将考虑处理数千万个文档
  • 在 GWT 中使用参数发出 POST 请求

    我正在尝试使用一组参数对给定 URL 执行 POST 请求 我遇到的问题是发出了 POST 请求 但没有传递任何参数 RequestBuilder builder new RequestBuilder RequestBuilder POST
  • 使用 d3.js 的多个地图:更改比例和中心的值

    我正在构建一个 d3 v4 地图可视化它允许用户在许多数据集 json 文件 之间切换两个不同的地区 一个国家的行政单位和较小的行政单位进入其首都 实际上 通过按钮和 jquery 在初始国家级别上从一个数据集到另一个数据集的切换效果很好
  • VBA 捕获“计算工作表 (shift+f9)”和“计算工作簿”事件

    我不知道这是否是微不足道的或实际上很棘手 是否有可能捕获 VBA 中的 计算工作表 shift f9 和 计算工作簿 事件 我想隐藏一些操作几千行的进程 只显示一些关键值 我正在计算分布 数千行 并且只想输出百分位数和一些统计数据 以及图表
  • jquery-ui datepicker 多语言集成

    我正在尝试将不同的 jquery ui datepicker 选项组合到一个函数中 我可以让大部分脚本脱离语言而工作 我拥有所有 i18n 文件 并且我正在使用 select 元素来更改值 但似乎没有任何效果 我做错了什么
  • API 请求错误 - 请求的资源上不存在“Access-Control-Allow-Origin”标头

    我尝试获取 API 请求 但返回此错误 Access to XMLHttpRequest at https api deezer com chart from origin http localhost 3000 已被 CORS 策略阻止
  • 文件夹目录中的子文件夹数量

    我有一个包含两个数据文件的文件夹 txt等 和子文件夹 在Java中 如何获取任何指定目录路径中的子文件夹数量 因此排除数据文件 仅计算子文件夹 我读过有关计算数量的内容 txt文件 但似乎找不到任何有关仅计算子文件夹的信息 我不知道从哪里
  • 为什么 Net::FTP 无法连接到服务器?

    我正在尝试创建一个脚本来使用 Ruby 列出并从 FTP 服务器下载数据 我是 Ruby 新手 所以我寻找了如何使用 Net FTP 的文档 我无法理解为什么这不起作用 require net ftp server ftp server c
  • 在 D3.js 中导入并解析 SVG 文件

    我在其他地方 使用 MS Visio 创建了 SVG 文件 我想将其用作可视化的背景 其中一些定位是由 SVG 图形中项目的放置驱动的 理想情况下 我能够直接操作导入的 SVG 数据 然后使用它通过 D3 在调用文档中创建元素 是否有一种简
  • C 中的双三次插值

    我正在尝试处理c中的双三次图像插值 因此我构建了这个小脚本 1 resize image 函数 void resize image PPMImage source image PPMImage destination image float
  • 模拟网页某个部分的移动分辨率

    我有一个网站 主要用于桌面上的大屏幕显示器 在页面内 我将有各种内容部分 但我还希望在 div 内有一个移动应用程序区域 该区域将向用户显示移动应用程序中的项目在不同手机上的外观可能有所不同 查看一些手机的规格 我发现 iPhone 7 4
  • Codeception - 无法连接到 Webdriver(验收测试)

    我可以访问 url 并创建会话 http localhost 4444 wd hub static resource hub html http localhost 4444 wd hub static resource hub html
  • 将 json 字符串转换为对象数组

    我有 json 数组作为字符串 id 1 lat 23 053 long 72 629 location ABC address DEF city Ahmedabad state Gujrat phonenumber 1234567 id
  • CSS 3 - 缩放过渡在谷歌浏览器中恢复

    我有一个问题 我有以下代码 用于使用 CSS3 过渡来增加比例 最后它在增加后恢复到原始比例 CSS big transition all 0 3s ease in out display inline big hover webkit t
  • 无法在 Windows Server 2008 SP2 上启用 TLS 1.2

    我们最近将 Java 版本升级到JDK 1 8 0 141这迫使我们的 java 客户端使用TLS 1 2我们有一个 Net 2 0Web 服务运行在Windows Server 2008 SP2仅支持SSL V3 and TLS 1 0
  • 单行水平滚动/可滑动 GridView

    我想要一个可以通过鼠标和触摸滑动水平滚动的单行 GridView GridView是通过绑定来呈现图像 以便从图像数组中选择单个图像 除了水平滚动不起作用之外 一切都工作正常 装订 图像选择等 XAML 代码如下所示 我缺少什么
  • Springfox swagger-ui 3.0.0 不显示 swagger-ui.html 页面

    我将 springfox swagger ui 与 Springboot 结合使用 但未启用分段上传的 fileUpload 按钮 我尝试升级到 springfox swagger ui 3 0 0 但这甚至没有打开 swagger ui