一、场景介绍
由于业务需要,将之前采用
Nacos
作为注册中心的应用模块换成Eureka
作为注册中心之前所有接口返回的信息都从
JSON
结构变成了XML
结构
二、问题分析
添加
Eureka
客户端依赖后返回的是XML
格式的数据而不是JSON
格式的数据由现象可以知道,应该是换注册中心的问题
查看
Eureka
的依赖关系,可以看到Eureka
中默认集成了com.fasterxml.jackson.dataformat
的jackson-dataformat-xml
XML
的优先级比JSON
的高,所以会优先返回XMl
三、解决方案
排除
Eureka
中默认集成了com.fasterxml.jackson.dataformat
的jackson-dataformat-xml
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId> <!--去除jackson-dataformat-xml,否则会返回xml文件,而不是JSON--> <exclusions> <exclusion> <groupId>com.fasterxml.jackson.dataformat</groupId> <artifactId>jackson-dataformat-xml</artifactId> </exclusion> </exclusions> </dependency>
再次访问接口成功返回
JSON
结构
版权声明:本文为Rambo_Yang原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。