Получите доступ к Swagger-UI в среде сценического / тестового / производственного процесса - PullRequest
0 голосов
/ 27 декабря 2018

Я реализовал SpringFox Swagger2 и Swagger-UI с SpringBoot в своем коде, и я могу документировать API.Я также могу получить доступ к HTML-странице Swagger-UI, используя http://localhost:8080/api/swagger-ui.html#/ в локальной системе.

Теперь я внес изменения в основную ветку, которая развернута в промежуточной среде.Однако, когда я пытаюсь использовать промежуточный URL env и добавляю к нему HTML-страницу swagger-ui, я перенаправляюсь на целевую страницу этапа env.например, sampleURL.com/api/swagger-ui.html/.

Как я могу сделать эту страницу swagger-ui доступной во всех средах, таких как stage / test / prod, так же, как я могу получить доступ в локальной?

Myconfig:

@Configuration
@EnableSwagger2
class SwaggerConfig {

@Bean
fun tryItOutConfig(): UiConfiguration {
    return UiConfigurationBuilder.builder().supportedSubmitMethods(arrayOf("")).build()
}

@Bean
fun myApi(): Docket {
    val globalResponses = Arrays.asList(ResponseMessageBuilder()
            .code(200)
            .message("Success")
            .build(), ResponseMessageBuilder()
            .code(401)
            .message("Unauthorized")
            .build(), ResponseMessageBuilder()
            .code(403)
            .message("Forbidden")
            .build(), ResponseMessageBuilder()
            .code(404)
            .message("Not found")
            .build(), ResponseMessageBuilder()
            .code(500)
            .message("Internal Server Error")
            .build())

    return Docket(DocumentationType.SWAGGER_2)
            .useDefaultResponseMessages(false)
            .produces(hashSetOf("application/json") as MutableSet<String>?)
            .globalResponseMessage(RequestMethod.GET, globalResponses)
            .globalResponseMessage(RequestMethod.POST, globalResponses)
            .globalResponseMessage(RequestMethod.DELETE, globalResponses)
            .globalResponseMessage(RequestMethod.PUT, globalResponses)
            .select()
            .apis(RequestHandlerSelectors.basePackage("com.sample.controller"))
            .build()
            .apiInfo(apiInfo())
}

private fun apiInfo(): ApiInfo {
    return ApiInfo(..API Info here..)
}

}

Версия Swagger-UI и Swagger2: 2.9.2

Примечание: окружение, необходимое для доступа к Swagger-Пользовательский интерфейс, имеет Google OAuth-аутентификацию.

Заранее спасибо.

...