我有spring-mvc app并且我已经嵌入了RestAPI。一切正常我的休息api映射到/rest/*
url。当我添加SwaggerConfig时,它已经开始识别我的控制器,但是当我用swagger-ui(gui形式来简化消费者与api的交互)时
http://localhost:8080/ProductCatalog/rest/branch?id=1
尽管SwaggerConfig映射到正确的url上,因为我在编写时已经有了这个GUI表示
http://localhost:8080/ProductCatalog/rest/swagger-ui.html
根网址上有app的主要部分(这不是我工作的一部分)我的部分映射到/rest/*
如何在/rest/*
上更改此“试用”网址?
我的SwaggerConfig
@Configuration
@EnableSwagger2
public class SwaggerConfig {
@Bean
public Docket pscApi() {
return new Docket(DocumentationType.SWAGGER_2)
//.groupName("PSC");
.apiInfo(apiInfo())
.select()
.apis(RequestHandlerSelectors.basePackage("restService.com.websystique.springmvc"))
.paths(PathSelectors.any())
.build();
//PathSelectors.regex("/api/.*")
}
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
.title("RestApiOfPSC")
.description("REST API for PSC.")
.build();
}
}
我也指定了这个
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("swagger-ui.html")
.addResourceLocations("classpath:/META-INF/resources/");
registry.addResourceHandler("/webjars/**")
.addResourceLocations("classpath:/META-INF/resources/webjars/");
}
抱歉我的英文不好,并提前致谢
答案 0 :(得分:3)
我已经知道如何做到这一点。
docket.pathMapping("/rest");
有时您需要以另一种方式改变它
在你的Docket bean中写docket.host("your host url");
更准确地读了我的问题
https://github.com/springfox/springfox/issues/1468
并通过引用#issue1050。