Я запутался с исходным URL-адресом пользовательского интерфейса Spring Fox, они не указывают на правильный URL-адрес.
Я только что развернул войну в контексте, поэтому приложение находится в 127.0.0.1:8080/bff
, мне удалось добавитьчванство и успех, теперь он работает в 127.0.0.1:8080/bff/swagger-ui.html
, но когда я пытаюсь проверить API, он указывает на 127.0.0.1:8080/bff/v2/api-docs/api/v1/home/profile
.Почему существует v2/api-docs
!?
Я знаю, что список API на swagger-ui заполнен этим списком, но почему он внедряется в URL при тестировании API?потому что весь мой API лежит на 127.0.0.1:8080/bff/api/v1
Это скриншот
Это код.
@Configuration
@EnableSwagger2
public class SwaggerConfig {
@Autowired
private GitVersionPropertiesConfig gitVersionPropertiesConfig;
@Bean
public Docket api() {
return new Docket(DocumentationType.SWAGGER_2)
.globalOperationParameters(
Lists.newArrayList(new ParameterBuilder()
.name("Authorization")
.description("OAUTH2 Token")
.modelRef(new ModelRef("string"))
.parameterType("header")
.required(false)
.build()))
.apiInfo(apiInfo())
.pathMapping("/")
.pathProvider(new RelativePathProvider(null) {
@Override
public String getApplicationBasePath() {
return "/bff/";
}
})
.select()
.apis(RequestHandlerSelectors.any())
.paths(PathSelectors.regex("/api.*"))
.build();
}
ApiInfo apiInfo() {
String desc = "Bima Friends Forever API<br>"
+ "Current Branch : <b>"+gitVersionPropertiesConfig.getGitBranch()+"</b><br>"
+ "Timestamp : <b>"+gitVersionPropertiesConfig.getGitBuildTime()+"</b>";
return new ApiInfoBuilder()
.title("BFF - Hutchison")
.description(desc)
.version(gitVersionPropertiesConfig.getGitCommitIdAbbrev())
.build();
}
}
Это временное исправление, но не постоянное.
Откройте консоль браузера и запустите window.swaggerUi.api.setBasePath ('/ bff');
Сервер: WildflySwagger UI Версия: 2.7.0
Заранее спасибо.