@RequestBody

Dev.Hammy·2024년 4월 3일
0

반응형 스택에서 이에 상응하는 내용 보기

@RequestBody annotation을 사용하면 요청 본문을 읽고 HttpMessageConverter를 통해 Object로 역직렬화할 수 있습니다. 다음 예에서는 @RequestBody 인수를 사용합니다.

@PostMapping("/accounts")
public void handle(@RequestBody Account account) {
	// ...
}

MVC Config메시지 Converters 옵션을 사용하여 메시지 변환을 구성하거나 사용자 정의할 수 있습니다.

jakarta.validation.Valid 또는 Spring의 @Validated annotation과 함께 @RequestBody를 사용할 수 있으며 두 가지 모두 표준 Bean 유효성 검사가 적용됩니다. 기본적으로 유효성 검사 오류로 인해 MethodArgumentNotValidException이 발생하고 이는 400(BAD_REQUEST) 응답으로 전환됩니다. 또는 다음 예제와 같이 Errors 또는 BindingResult 인수를 통해 컨트롤러 내에서 로컬로 유효성 검사 오류를 처리할 수 있습니다.

@PostMapping("/accounts")
public void handle(@Valid @RequestBody Account account, Errors errors) {
	// ...
}

다른 매개변수에 @Constraint annotation이 있어서 메서드 유효성 검사가 적용되는 경우 대신 HandlerMethodValidationException이 발생합니다. 자세한 내용은 유효성 검사 섹션을 참조하세요.

0개의 댓글