Настройте Swagger-UI для получения конечной точки выхода HttpSecurity Spring

У меня Swagger настроен и работает для всех контроллеров, перечисленных в моем приложении. Однако я хочу, чтобы он выбрал конечную точку Spring Security Logout, и я не могу найти способ заставить ее работать. Как вы можете видеть из фрагмента кода ниже, я указываю logoutUrl для пользователя, чтобы сделать его сеанс недействительным. Я пробовал делать пометки на уровне класса и на уровне метода, но не повезло. Есть идеи?

@Override
public void configure(HttpSecurity http) throws Exception {
    http.addFilter(someFilter());
    http.headers().and().csrf().disable()
            .authorizeRequests()
            .antMatchers("endpoint",
                    "endpoint",
                    "endpoint",
                    "endpoint",
                    "endpoint",
                    "endpoint",
                    "endpoint").permitAll()     
            .anyRequest().authenticated()
            .and()
            .logout().logoutUrl("endpoint/logout").invalidateHttpSession(true).logoutSuccessHandler(logoutSuccessHandler);
}

Моя конфигурация Swagger Docket приведена ниже:

@Bean
public Docket api() {
    return new Docket(DocumentationType.SWAGGER_2)
            .select()
            .apis(RequestHandlerSelectors.any())
            .paths(PathSelectors.any())
            .build()
            .apiInfo(new ApiInfo("API",
                    "Provides API's",
                    "1.0",
                    null,
                    "someEmail@nowhere.com",
                    null,
                    null))
            .useDefaultResponseMessages(false)
            .pathProvider(new RelativePathProvider(servletContext) {
                @Override
                protected String applicationPath() {
                    return super.applicationPath() + "/path";
                }

                @Override
                protected String getDocumentationPath() {
                    return super.getDocumentationPath() + "/path";
                }
            });
}

1 ответ

Плагин Spring Fox использует Spring bean для построения документации API. Посмотрите на этот ответ: /questions/26090575/dokumentirovanie-api-vhoda-vyihoda-spring-v-swagger/26090583#26090583

Другие вопросы по тегам