Javascript 如何在获取api到SpringAPI的登录请求时加密密码?
我对安全主题和FetchAPI完全陌生,所以这可能是一个愚蠢的问题,但我不知道从哪里开始。我已经检查了一些示例,但是我找不到一个适当的方法来修改前端和后端。我在前端api上使用FetchAPI,但我只是发送简单的登录请求,但在请求时可以看到邮件和密码。 我的fetch api代码只是一个简单的post请求:Javascript 如何在获取api到SpringAPI的登录请求时加密密码?,javascript,typescript,authentication,spring-security,fetch-api,Javascript,Typescript,Authentication,Spring Security,Fetch Api,我对安全主题和FetchAPI完全陌生,所以这可能是一个愚蠢的问题,但我不知道从哪里开始。我已经检查了一些示例,但是我找不到一个适当的方法来修改前端和后端。我在前端api上使用FetchAPI,但我只是发送简单的登录请求,但在请求时可以看到邮件和密码。 我的fetch api代码只是一个简单的post请求: export class User { userId: number; email: string; username: string; password:
export class User {
userId: number;
email: string;
username: string;
password: string;
constructor() {
}
}
registerUser(user: User) {
return fetch("http://localhost:8080/registerUser", {
headers: {
'Accept': 'application/json',
'Content-Type': 'application/json'
},
method: 'POST',
body: JSON.stringify(user)
});
}
这只是一个简单的post请求,所有参数都是可见的,我在spring上使用这个方法:
@PostMapping("/registerUser")
public UserDto registerUser(@RequestBody UserDto userDto) throws UserAlreadyExistException {
if (!isNull(userService.getUserByUsername(userDto))) {
throw new UserAlreadyExistException("User with username " + userDto.getUsername() + "already exist");
}
User userObj;
userObj = userService.saveUser(modelMapper.map(userDto, User.class));
return modelMapper.map(userObj, UserDto.class);
}
如何修改它们,或者从何处开始检查?“邮件和密码在请求时都可见”对谁可见?如果您担心网络上的其他人,请使用https(这对于生产来说是必须的)。我的意思是我可以在浏览器控制台上发送详细信息。当我选中浏览器控制台网络选项卡时,我看到请求参数上的用户名和密码。很好,您刚刚键入了它。:)如果有人可以访问您的浏览器开发工具,祝您在securite方面好运:)