У меня проблема с REST API, когда я делаю запрос (POST) из формы входа в систему, я получаю html для входа вместо User JSON. Я предполагаю, что проблема с настройкой Spring Security, но я не знаю, как ее решить. Мой метод настройки:
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.authorizeRequests()
.antMatchers("/", "/signin.html","/index.css","/javascript/**", "api/**").permitAll()
.anyRequest().authenticated()
.and()
.formLogin()
.loginPage("/signin.html");
}
и почтовый контроллер:
@PostMapping("")
public ResponseEntity<Object> save( @RequestBody @Valid UserDto user, BindingResult result){
if(user.getId() != null)
throw new ResponseStatusException(HttpStatus.BAD_REQUEST, "User cannot be saved");
System.out.println(result);
if(result.hasErrors()){
List<ObjectError> errors = result.getAllErrors();
errors.forEach(err -> System.out.println(err.getDefaultMessage()));
return ResponseEntity.badRequest().body(errors);
}
UserDto savedUser = userService.save(user);
URI location = ServletUriComponentsBuilder
.fromCurrentRequest()
.path("{id}")
.buildAndExpand(savedUser.getId())
.toUri();
return ResponseEntity.created(location).body(savedUser);
}
Запрос сделан для / api / users. Может кто-нибудь помочь?