在swagger ui 的页面上有:
Base URL:
如果没有特别设定,那么显示的就是服务器的地址。接口的测试的url是由Base URL + 接口的path。一般情况下是没有问题的。但是我这边代码部署到服务器后,访问地址变成了 :服务器的地址+项目name,这样的话,base Url显示其实就有问题了,少了项目name。同时,接口的测试url也会错误,缺少项目name。
解决一:
@Bean
@Primary
public Docket createRestApi() {
return new Docket(DocumentationType.SWAGGER_2)
// .groupName(appName)
.apiInfo(apiInfo())
.select()
.apis(RequestHandlerSelectors.withClassAnnotation(RestController.class))
.paths(PathSelectors.any())
.build()
//下面这个设置就是在接口的path前加上project-name
.pathMapping("/project-name");
}
解决二:
#在yml文件中。会重新设置base url,也就是把base url固定了,本地测试的话,base url也是下面的值,而不是127.0.0.1:8080。
springfox:
documentation:
swagger:
v2:
host: yourapp.abc.com/project-name