我在this tutorial之后实现了一个基本的JPA身份验证。
我想创建一个端点/mydetails
来显示用户信息(配置文件信息)。
我尝试过的:
@GetMapping("/mydetails")
public Optional<User> getUser(HttpServletRequest request) {
Optional<User> foundUser = Optional.ofNullable(userRepo.getUserByUsername(request.getUserPrincipal().getName()));
return foundUser;
}
结果:
{
"id":1,
"username":"name.surname@companyname.com",
"password":"$2a$10$7YzUO6scaC06LV6IgOsSXetFm4/U0WM.UZykhRfQcJBzKacyZFMK",
"first_name":"John",
"last_name":"Walker",
"organization_name":"ABC",
"role":"Admin",
"credibility_rating":"100"
}
问题是,这字面上采取了所有的信息,我想要的一切,除了密码。
如何阻止响应发送密码信息?
我完全是Spring的新手,已经很多年没有使用Java了。
任何见解都将不胜感激。
1条答案
按热度按时间whitzsjs1#
看起来你在谈论一个返回JSON的REST控制器。在默认配置下,Spring Boot使用Jackson将对象转换为JSON。最简单的修复方法是告诉Jackson ignore你的
User
类中的password
字段:请参阅本文了解更多信息。