Swagger UI - 如何默认扩展所有操作?

问题描述 投票:12回答:5

当我打开它时,所有操作都会折叠,我希望默认情况下将其展开。

我需要改变任何属性来实现它吗?

这是我的招摇豆:

@Configuration
@EnableSwagger2
public class SwaggerConfig {

    @Bean
    public Docket restApi() {
        return new Docket(DocumentationType.SWAGGER_2)
                .select()
                .paths(regex("/api/.*"))
                .build()
                .directModelSubstitute(XMLGregorianCalendar.class, Date.class)
                .apiInfo(apiInfo())                
                .useDefaultResponseMessages(false);
    }
}
spring api spring-mvc swagger swagger-ui
5个回答
27
投票

我相信你可以在创建swagger-ui时设置docExpansion:"full"

有关详细信息,请参阅https://github.com/swagger-api/swagger-ui#parameters

docExpansion:控制操作和标记的默认扩展设置。它可以是'list'(仅扩展标签),'full'(扩展标签和操作)或'none'(不扩展)。默认为“列表”。


4
投票

这是Springfox的答案,你似乎使用它:

  @Bean
  UiConfiguration uiConfig() {
    return UiConfigurationBuilder.builder()
        .docExpansion(DocExpansion.LIST) // or DocExpansion.NONE or DocExpansion.FULL
        .build();
  }  

来源:http://springfox.github.io/springfox/docs/current/#springfox-swagger2-with-spring-mvc-and-spring-boot


2
投票

我是通过在swaggerUi中添加所需的更改来实现的。您需要根据您的要求进行更改,如下所示;

  1. docExpansion:“无” - 它会隐藏一切。
  2. docExpansion:“list” - 它将扩展/仅列出所有操作。
  3. docExpansion:“full” - 它将扩展所有内容(正如名称所示,完全展开)。

1
投票
private static final String DOC_EXPANSION = "list"; //none, full

    @Bean
    public UiConfiguration uiConfig() {
        return new UiConfiguration(
                null, DOC_EXPANSION, "alpha", "schema", UiConfiguration.Constants.DEFAULT_SUBMIT_METHODS, false, true, null
        );
    }

1
投票

我刚刚发现我实际上可以将参数传递给swagger url,如下所示:

http://...../swagger/index.html?docExpansion=expand

docExpansion:“无” - 隐藏一切。

docExpansion:“list” - 展开/仅列出所有操作。

docExpansion:“full” - 扩展所有内容(如名称所示,完全展开)。

© www.soinside.com 2019 - 2024. All rights reserved.