【问题标题】:Spring Data Rest: Different resource returned from receivedSpring Data Rest:从接收返回的不同资源
【发布时间】:2014-11-10 05:56:00
【问题描述】:

在 Spring Data Rest 中,是否可以为请求返回不同的资源,并在从请求正文中读取时接收不同的资源对象?

添加用户时的示例:

{"username": "admin", "password": "123456"}

查询用户时的示例:

{"username": "admin"}

正如您在上面看到的,当有人添加用户时,他们必须发送密码,但我希望在发送响应时不发送密码。

【问题讨论】:

标签: java spring rest spring-data spring-data-rest


【解决方案1】:

您应该能够将@JsonIgnore 添加到相关属性。当用户对象被编组时,这将始终隐藏密码。

public class user {
    private String username;
    private String password;

    @JsonIgnore
    private String getPassword() {
        return password;
    }

    @JsonProperty
    private void setPassword(String password) {
        this.password = password;
    }
}

【讨论】:

  • 这将阻止将密码发送到服务。
  • 啊当然。但是,您应该可以将其放在吸气剂上。我将修改我提出的示例。
  • 将它放在 getter 上仍然会忽略整个属性。
  • 建议的解决方案几乎是正确的。有关更多信息,请参阅此:stackoverflow.com/questions/11872914/…
猜你喜欢
  • 2015-08-30
  • 2021-05-12
  • 1970-01-01
  • 1970-01-01
  • 2018-09-04
  • 2017-03-18
  • 1970-01-01
  • 2015-11-29
  • 2017-06-21
相关资源
最近更新 更多