【问题标题】:Angular, Spring boot REST getting JSON parse error: null spring bootAngular,Spring Boot REST 获取 JSON 解析错误:null spring boot
【发布时间】:2019-07-26 23:57:05
【问题描述】:

我将 Spring Boot 2.1.2.RELEASE 与 Angular 7 和 MongoDB 一起使用。

我正在编写一个服务,我想在其中创建一个新的数据库条目,但我从 Spring Boot 收到一条错误消息,提示 JSON parse error: null spring boot。

问题是,当 Angular 创建在请求中发送的 JSON 时,它包含所有为 null 的值,如 { id: null, ... } 我试图找到解决问题的方法,但答案我发现对我来说不是那么令人满意。

  1. 在 Angular 中手动构建 JSON 字符串并排除所有为空的参数。 (对于多个值可以为 null 的复杂对象,这不是一个好的解决方案

  2. 添加以下配置,让杰克逊明白它应该将其解释为空值:

spring.jackson.default-property-inclusion=NON_NULL

spring.jackson.default-property-inclusion=non_null

这对我不起作用。还是同样的问题。

有人对如何解决这个问题有任何建议吗?

谢谢!

【问题讨论】:

  • 检查 NON_EMPTY

标签: java json angular spring-boot


【解决方案1】:

你可以像这样使用@JsonInclude注解:

@JsonInclude(Include.NON_NULL)
public class MyViewModel { ... }

如果你愿意,你也可以申请属性粒度:

public class MyViewModel {

    @JsonInclude(Include.NON_NULL)
    private String value;
    ...
}

【讨论】:

  • 我也试过这个,但没有成功,仍然得到同样的错误。看着这个答案,他们在spring boot渲染JSON时建议了这种方法,如果相同的注释对解析JSON有影响?stackoverflow.com/questions/12707165/…
猜你喜欢
  • 2017-11-18
  • 2017-06-27
  • 2018-06-29
  • 1970-01-01
  • 2021-11-18
  • 1970-01-01
  • 2021-09-12
  • 1970-01-01
  • 2021-07-14
相关资源
最近更新 更多