Skip to main content
 首页 » 编程设计

swagger-ui之为什么springfox-swagger2 UI会告诉我 “Unable to infer base url.”

2024年12月31日27webabcd

为什么springfox-swagger2 UI告诉我Unable to infer base url.据我所知,我使用的是典型的Swagger Spring 启动配置。

如屏幕截图所示,支持UI的swagger-fox网址为 example.com/api 。注意:导航到:https://localhost:9600/api/v2/api-docs/时,我得到一个标准的Spring Whitelabel Error Page。我怀疑这是问题的根源吗?我没有看到Spring没有加载springfox-swagger2的错误,所以我不知道为什么它不起作用。



我的配置看起来像这样(并且我已经尝试过从网上搜索建议的各种配置变化):

@EnableSwagger2 
@EnableWebMvc 
@ComponentScan(basePackages = {"com.company.project"}) 
public class SwaggerConfig 
{ 
    @Bean 
    public Docket api() { 
        return new Docket(DocumentationType.SWAGGER_2) 
                .select() 
                .apis(Predicates.not(RequestHandlerSelectors.basePackage("org.springframework.boot"))) 
                .apis(Predicates.not(RequestHandlerSelectors.basePackage("org.springframework.cloud"))) 
                .apis(Predicates.not(RequestHandlerSelectors.basePackage("org.springframework.data.rest.webmvc"))) 
                .paths(PathSelectors.any()) 
                .build(); 
    } 
} 


<!-- to generate /swagger-ui.html --> 
<dependency> 
    <groupId>io.springfox</groupId> 
    <artifactId>springfox-swagger2</artifactId> 
    <version>2.7.0</version> 
</dependency> 
 
<dependency> 
    <groupId>io.springfox</groupId> 
    <artifactId>springfox-swagger-ui</artifactId> 
    <version>2.7.0</version> 
</dependency> 

注意:有趣的是,当我尝试版本2.6.0时,我没有看到模式弹出窗口,但是我的Swagger UI显示0 api内容。所以,我知道模态一定是很新的吗?

如果此处没有足够的信息,请给我评论。

请您参考如下方法:

我能够通过添加带有注释的SpringBootApplication来解决此问题-如Mark所建议:

@EnableSwagger2