Как добавить общие параметры запроса в одном месте в пользовательском интерфейсе swagger-ui? - PullRequest
0 голосов
/ 24 октября 2019

Я интегрирую swagger-ui (версия: 2.6.1) в проект spring-mvc. Каждая конечная точка во всем приложении имеет два общих параметра (LIMIT & OFFSET) .

Я определил эти два параметра как глобальные параметры в конфигурации сваггера. Теперь эти два параметра отображаются для каждого API.

В отличие от вышеупомянутых, мне нужно, чтобы эти два общих параметра присутствовали в пользовательском интерфейсе только в одном месте, но значения, введенные в них, должны быть применимы для всех конечных точек. Возможно ли это?

Как показано ниже, я использовал глобальные параметры, которые отображаются в каждой конечной точке.

@Configuration
@EnableSwagger2
@EnableWebMvc
@ComponentScan("com.example")
public class SwaggerConfig {

    @Bean
    public Docket api() {

        return new Docket(DocumentationType.SWAGGER_2)
                .useDefaultResponseMessages(true).select()
                .apis(RequestHandlerSelectors.basePackage("com.example.controller"))
                .paths(PathSelectors.any()).build()
                .globalOperationParameters(getGlobalParameters());
    }

    private List<Parameter> getGlobalParameters() {
        List<Parameter> parameters = new ArrayList<Parameter>();
        parameters.add(
            new ParameterBuilder()
            .name("testParameter")
            .description("for testing common parameters")
            .modelRef(new ModelRef("string"))
            .parameterType("query")
            .required(false)
            .build()
        );
        return parameters;
    }

}

Возможно ли, что общие параметры присутствуют только в одном месте пользовательского интерфейса (в верхней части страницы, если это возможно) , но применимо ко всем конечным точкам?

...