SpringCloud返回的是xml格式而非JSON数据

一、问题描述:

最近接触eureka,写了一个接口,使用@RestController注解修饰了类,预期是返回json格式的数据,但是结果返回的是xml格式的数据。

二、问题分析:

原因是因为直接或间接引入了jackson-dataformat-xml依赖导致的。我这里是因为引入了spring-cloud-starter-netflix-eureka-client以及fastjson两个包,而这两个依赖里面都包含了jackson-dataformat-xml依赖。

三、解决方案:

方案一:

如下图,在依赖中手动排除掉jackson-dataformat-xml依赖。

方案二:

java 复制代码
在类上使用@RestController 或者 在接口上使用@ResponseBody注解,同时在接口映射的注解中做如下配置:
@GetMapping(value = "/list", produces = { "application/json;charset=UTF-8" })。

总结:

以上的解决办法并不是我真正的问题,根据他人的博客按照流程进行修改时,发现自己错误引入了包导致。

正常情况下,eureka 注册中心应该引入如下依赖:

XML 复制代码
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>

而需要注册的服务引入 :

XML 复制代码
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>

但我错误的将需要注册的服务也引入了"eureka-server"依赖而不是"client",其他部分按正常配置。服务也能成功被注册到eureka中,也可以被解析和调用访问,但是却是XML格式的数据。

最后修改后恢复json。

相关推荐
bugcome_com6 小时前
JWT 知识小课堂:从入门到精通,一文吃透 JSON Web Token
前端·json
LitchiCheng16 小时前
还在改xml调相机?MuJoCo交互式可视化调整相机安装位置
xml·数码相机
Devin~Y19 小时前
从内容社区到AI智能客服:Spring Boot + Spring Cloud + Spring AI 全栈实战面试拆解
java·spring boot·redis·elasticsearch·spring cloud·kafka·mybatis
ccino .20 小时前
awvs_json_word.py 使用说明手册
json·word
richard_yuu20 小时前
JSON vs XML vs 二进制:3种序列化终极选型
xml·c++·qt·学习·json
IT机器猫21 小时前
RabbitMQ基础二
java·spring boot·分布式·spring cloud·log4j·rabbitmq·springamqp
卷心菜的学习路21 小时前
基于 Spring Cloud Tencent 元数据路由实现个人开发泳道,告别频繁部署
java·spring cloud
砍材农夫1 天前
spring-ai|Spring‑AI 2.0.0 新特性 + 入门教程
spring boot·spring·spring cloud
用户7783366132112 天前
SERP 返回 JSON 用 Pydantic 强校验:类型安全解析
json
灵析表格2 天前
灵析表格财务函数深度实用性分析与实操教程
开发语言·ai·json·excel·wps