@RequestBody hinzugefügt beim login
This commit is contained in:
parent
211b7279b5
commit
251f5c3f25
@ -48,20 +48,19 @@ public class Controller {
|
||||
|
||||
@RequestMapping("/api/login")
|
||||
@ResponseBody
|
||||
public ResponseEntity<Object> login(@RequestParam(value = "username", defaultValue = "") String username,
|
||||
@RequestParam(value = "password", defaultValue = "") String password){
|
||||
if(username == "" || password == ""){
|
||||
return ResponseEntity.status(HttpStatus.BAD_REQUEST).body(null);
|
||||
public ResponseEntity<Object> login(@RequestBody User user){
|
||||
if(user.getUsername() == null || user.getPassword() == null){
|
||||
return ResponseEntity.status(401).body(null);
|
||||
}
|
||||
if(userRepository.findByUsername(username) == null){
|
||||
return ResponseEntity.status(HttpStatus.BAD_REQUEST).body(null);
|
||||
if(userRepository.findByUsername(user.getUsername()) == null){
|
||||
return ResponseEntity.status(401).body(null);
|
||||
}
|
||||
|
||||
if(BCrypt.checkpw(password, userRepository.findByUsername(username).getPassword())){
|
||||
if(BCrypt.checkpw(user.getPassword(), userRepository.findByUsername(user.getUsername()).getPassword())){
|
||||
String token = BCrypt.hashpw(String.valueOf(System.currentTimeMillis() + counter.incrementAndGet()), BCrypt.gensalt());
|
||||
String hashedToken = BCrypt.hashpw(token, BCrypt.gensalt());
|
||||
userRepository.findByUsername(username).setToken(hashedToken);
|
||||
userRepository.save(userRepository.findByUsername(username));
|
||||
userRepository.findByUsername(user.getUsername()).setToken(hashedToken);
|
||||
userRepository.save(userRepository.findByUsername(user.getUsername()));
|
||||
return ResponseEntity.ok(new Gson().toJson(token));
|
||||
}
|
||||
return ResponseEntity.status(HttpStatus.BAD_GATEWAY).body(null);
|
||||
|
||||
Loading…
Reference in New Issue
Block a user