При попытке выполнить POST запрос (использую httpie, через curl та же проблема) :
http -a adm:pass POST :8080/user username=ivan password=pass email=test
Получаю статус 302:
HTTP/1.1 302
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Connection: keep-alive
Content-Length: 0
Date: Sat, 24 Feb 2024 11:47:28 GMT
Expires: 0
Keep-Alive: timeout=60
Location: http://localhost:8080/login;jsessionid=53DF74DFA68F0968E5220A14472267CB
Pragma: no-cache
Set-Cookie: JSESSIONID=53DF74DFA68F0968E5220A14472267CB; Path=/; HttpOnly
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
X-Content-Type-Options: nosniff
X-Frame-Options: DENY
X-XSS-Protection: 0
Происходит это только для POST запросов. Для GET авторизация проходит успешно и метод отрабатывает как надо.
POST метод:
@PostMapping
public ResponseEntity<?> registerUser(@Valid @RequestBody UserRegistrationDTO userDTO, Errors errors) {
if (errors.hasErrors()) {
return ResponseEntity.badRequest().body(errors);
}
User user = userService.register(userDTO.asUser(passwordEncoder, "ROLE_USER"));
URI location = ServletUriComponentsBuilder
.fromCurrentRequest()
.path("/{id}")
.buildAndExpand(user.getId())
.toUri();
return ResponseEntity.created(location).build();
}
Может кто уже сталкивался с подобной проблемой? Как убрать редирект на /login ?