问题:
一般情况下,@RestController中的接口默认响应数据格式都是 json 格式的数据,但有时候使用某些依赖包,会影响@ResponseBody的响应数据类型为xml格式,问题重现如下:
image.png
但我们希望响应数据格式是json格式,最后发现是因为某些依赖中整合了 jackson-dataformat-xml 依赖导致的,所以只需要把内置的这个依赖排除掉就解决了
<!-- SpringCloud alibaba sentinel (sentinel客户端) -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
<exclusions>
<exclusion>
<groupId>com.fasterxml.jackson.dataformat</groupId>
<artifactId>jackson-dataformat-xml</artifactId>
</exclusion>
</exclusions>
</dependency>
排除后:
image.png
注意:
除了上述的 spring-cloud-starter-alibaba-sentinel 中内置了 jackson-dataformat-xml 包,还有如下包中也内置了此包,所以使用的时候需要注意排除
1、spring-cloud-starter-netflix-eureka-server
2、spring-cloud-alibaba-sentinel-datasource
网友评论