如何解决REST API用户资源及其密码
我仍在学习REST API原理,这仍然使我感到困惑。用户资源中的密码是私有的,当然不能放置在响应中,而有时我们需要获取公开的用户数据(例如,当某人看到其他人的用户页面时)。我们如何基于REST API原则处理此问题?我应该在发送响应之前删除响应中的密码吗?
解决方法
是的,您不应返回密码。我建议您创建两个DTO
- UserInputDTO:其中包含密码和其他值
- UserOutputDTO:这里只有用于输出的字段,我们可以排除密码字段和与内部实现相关的字段。
如果输入和输出看起来相同,则可以在密码字段上添加JsonIgnore
注释。
如果删除意味着将其设置为null
,则用户仍然可以看到字段名password
,并且如果您随时忘记将其设置为null,则将是安全问题。要解决此问题,可以使用JsonIgnore
批注。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。