Настройте сгенерированный URL с помощью swagger - PullRequest
0 голосов
/ 11 июня 2018

Я использую swagger для описания моего Rest API

Итак, это swaggerConfig.java

@Configuration
@EnableSwagger2
public class SwaggerConfig {


    @Bean
    public Docket api() { 
        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo())
                .tags(
                        new Tag("Session", "All About Session", 1)
                        )
                .select()
                    .apis(RequestHandlerSelectors.any())
                    .paths(PathSelectors.any())
                    .build();                                           
    }

    private ApiInfo apiInfo() {
        return new ApiInfoBuilder()
                .title("My Rest API")
                .version("1.0.0")
                .build();
    }

Мой веб-сервис развернут по этой ссылке http://localhost:2080/ws1.1/

Swagger доступен через http://localhost:2080/ws1.1/swagger-ui.html

Теперь я настраиваю прокси-сервер Apache следующим образом

<VirtualHost *:80>

        ServerName cc.com
      ....
        ProxyPass    /stable  http://localhost:2080/ws1.1/
        ProxyPassReverse /stable  http://localhost:2080/ws1.1/

        <Location "/webapps">
            Order deny,allow
            Allow from all
        </Location>

</VirtualHost>

с этой конфигурацией, swagger-ui доступен через http://cc.com/stable/swagger-ui.html

До этого все в порядке

Но когда я пытаюсь запустить любую конечную точку моего API, swagger генерирует неверный URL

, это сгенерированный URL: http://cc.com/ws1.1/login?login=user&passwd=psw -> KO

Я ожидаю этот URL: http://cc.com/stable/login?login=user&passwd=psw

enter image description here

1 Ответ

0 голосов
/ 13 июня 2018

Вы можете попытаться установить для этого свойства значение Docket:

@Bean
public Docket api() { 
    return new Docket(DocumentationType.SWAGGER_2)
       .pathMapping("/stable")

Это добавит отображение пути сервлета в URL вашей конечной точки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...