首页   >   代码编程   >   JAVA开发

SpringBoot使用Swagger2,访问时提示“Unable to infer base url”

项目中接口交互文档使用的是swagger,今天在浏览器访问时弹框提示“Unable to infer base url. This is common when using dynamic servlet registration or when the API is behind an API Gateway. The base url is the root of where all the swagger resources are served. For e.g. if the api is available at http://example.org/api/v2/api-docs then the base url is http://example.org/api/. Please enter the location manually: ”。

SpringBoot使用Swagger2,访问时提示“Unable to infer base url”

查阅百度之后,发现大多数都是说没有加开启swagger注解,但是我这里确定已经加上了,还有说是返回数据格式不对,但是我这里也不是,因为我可以确定返回的都是json数据,最后定位到原因:自己写了登录拦截器,将swagger的相关请求给拦截掉了

将下面三个请求的拦截放开,问题得到解决!!!

/swagger-resources
/swagger-resources/configuration/ui
/swagger-resources/configuration/security

出现这个问题的一些可能原因:

1,版本问题,2.8以后的版本很容易出现这类问题;

2,在application启动类中未定义@EnableSwagger2注解;

3、swagger2页面期望接口返回json数据,而实际后端返回的是Xml格式数据,造成前端页面解析数据异常;

4、项目中有自定义的拦截器没有放开对swagger的拦截;

QQ群: 686430774  /  718410762

站长Q: 1347384268

如果文章有帮到你,可以考虑请博主喝杯咖啡!

分享到:

欢迎分享本文,转载请注明出处!

作者:不忘初心

发布时间:2019-09-13

永久地址:https://www.jiweichengzhu.com/article/7fade8b9c8b742aca7791718115e68e3

评论