티스토리 뷰

반응형

오늘의 에러 해결 일지입니다.

form data submit 도중 아래와 같은 에러가 발생하였습니다. 

Content type 'application/x-www-form-urlencoded;charset=UTF-8' not supported

발생한 에러

<form> 태그를 사용하여 데이터를 입력하던 와중 위와 같은 에러가 발생하는 경우가 종종 있습니다. 'application/x-www-form-urlencoded' 를 Spring Framework 내에서 지원하지 않는다고 합니다. 이럴때는 @RequestBody 또는 @RequestParam으로 나와 있는 구문을 삭제하고 아래와 같이 치환해봅니다.

@PostMapping(consumes = {MediaType.APPLICATION_FORM_URLENCODED_VALUE})
public ResponseEntity<?> postMapping(RequestDTO requestDTO) {
   return ResponseEntity.ok(service.doPost(requestDTO));
}

또는

@PostMapping(consumes = "application/x-www-form-urlencoded")
public ResponseEntity<?> postMapping(RequestDTO requestDTO) {
   return ResponseEntity.ok(service.doPost(requestDTO));
}

이렇게 적용하면 정상적으로 작동합니다. 

Reference: https://stackoverflow.com/questions/34782025/http-post-request-with-content-type-application-x-www-form-urlencoded-not-workin/38252762#38252762

반응형
댓글
공지사항