问题说明
在项目开发过程中出现了swagger-bootstrap-ui 页面提示"请确保swagger资源接口正确",效果如下:
image.png问题排查
- 经过排查,发现是api-docs接口Response返回的Json格式出现问题,导致前端解析错误。
- 通过进一步排查发现是Swagger2字段注释中,example中的字符串错误的多加了一个"}",导致api-docs在拼接Swagger2数据的时候产生Json结构拼接错误。
@ApiModelProperty(value = "对比指标" , example = "{\"columnId\":\"zhjzbdqk_cmb4\",\"ord\":4}}")//末尾多了一个"}"
private String sliceType;
解决办法
将example中的Json结构梳理正确,并在后续Swagger2相关参数的编写时,注意检查"{"、"["等有对Json结构产生干扰的字符串,或者不用。
附录
Swagger2 及 Swagger-UI pom.xml文件配置如下
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.9.2</version>
</dependency>
<dependency>
<groupId>com.github.xiaoymin</groupId>
<artifactId>swagger-bootstrap-ui</artifactId>
<version>1.9.3</version>
</dependency>
网友评论