纯 JSON(非 HAL 格式)的 Spring Data REST
Posted
技术标签:
【中文标题】纯 JSON(非 HAL 格式)的 Spring Data REST【英文标题】:Spring Data REST in plain JSON (not HAL format) 【发布时间】:2016-10-24 14:08:19 【问题描述】:应如何将 Spring Data Rest 配置为返回纯 JSON 而不是 HAL(带有超媒体链接的 JSON)
相关
Spring returns Resource in pure JSON not in HAL Format when including spring data rest Spring Data Rest -Disable self links(HAL) in Json 和大Disable Hypertext Application Language (HAL) in JSON? 使用 jsonapi 代替 HAL Changing the JSON format for spring-data-rest【问题讨论】:
【参考方案1】:将以下属性添加到您的 application.properties 或 yml 。默认是application/hal+json
spring.data.rest.defaultMediaType=application/json
【讨论】:
这不是生成一个简单的 json,而是生成一个包含链接的 json 在我的情况下,它已经具有该值,但我仍然看到_embeded
响应
这里是更准确的答案:***.com/a/23287265/4151158【参考方案2】:
对我来说spring.data.rest.defaultMediaType=application/json
不生效。但它可以通过编程配置来实现,如下所示:
public class SpringRestConfiguration implements RepositoryRestConfigurer
@Override
public void configureRepositoryRestConfiguration(RepositoryRestConfiguration config)
config.setDefaultMediaType(MediaType.APPLICATION_JSON);
config.useHalAsDefaultJsonMediaType(false);
【讨论】:
以上是关于纯 JSON(非 HAL 格式)的 Spring Data REST的主要内容,如果未能解决你的问题,请参考以下文章
使用 spring RestTemplate 消耗 json+hal _embedded 资源的问题
Jason中的Spring Data Rest -Disable自我链接(HAL)
如何发送纯 JSON 对象(位于模型对象内)以在 Spring Boot 中查看?
关于在Spring中通过注解形式的IoC容器 纯使用 @ComponentScan注解实现对包的自动扫描,实现非XML形式的 注解形式装配Bean类