728x90
반응형
Multipart file 업로드 시 아래와 같은 에러가 발생했다.
Content type 에러
분명 테스트 Controller에서 @RequestParam을 사용해 테스트 해봤을 때에는 S3 버킷에 잘 업로드 된 것을 확인했는데,
실제 게시판 글 등록 Controller에 적용해 보니 Content Type 에러가 계속 발생했다. front 단에서 헤더를 잘 설정 해 주었는데도 말이다..
Content type 'application/octet-stream' not supported
@PostMapping()
@ApiOperation(value = "게시판 공고 등록", notes = "게시판 공고를 등록한다")
@ApiResponses({
@ApiResponse(code = 204, message = "성공"),
@ApiResponse(code = 401, message = "인증 실패"),
@ApiResponse(code = 404, message = "사용자 없음"),
@ApiResponse(code = 500, message = "서버 오류")
})
public ResponseEntity<BoardRegisterRes> registerAdoptBoard(@RequestParam(value="data") BoardRegisterPostReq boardRegisterPostReq,
@RequestParam(value="thumbnailUrl") MultipartFile thumbnailUrl,
@RequestParam(value="fileList") List<MultipartFile> fileList
) throws IOException {
FormData하나를 DTO 형식으로 매핑해서 @ModelAttribute로 가져오고, consumes = {"multipart/form-data"}을 해줬더니 해결되었다.
@PostMapping(consumes = {"multipart/form-data"})
@ApiOperation(value = "게시판 공고 등록", notes = "게시판 공고를 등록한다")
@ApiResponses({
@ApiResponse(code = 204, message = "성공"),
@ApiResponse(code = 401, message = "인증 실패"),
@ApiResponse(code = 404, message = "사용자 없음"),
@ApiResponse(code = 500, message = "서버 오류")
})
public ResponseEntity<BoardRegisterRes> registerAdoptBoard(@ModelAttribute BoardRegisterPostReq boardRegisterPostReq) throws IOException {
Board board = boardService.registerBoard(boardRegisterPostReq);
System.out.println(board);
return ResponseEntity.ok(BoardRegisterRes.of(200, "공고가 정상적으로 등록되었습니다", board.getId()));
}
728x90
반응형
'Study > SpringBoot' 카테고리의 다른 글
Spring Boot Servlet Filter에서 에러 코드 변경하기 (0) | 2024.04.17 |
---|---|
MultipartFile을 사용해서 이미지를 로컬에 업로드하기 (1) | 2024.02.16 |
Spring application.properties Util로 만들어 쉽게 값 가져오기 (1) | 2024.02.07 |
Spring - @Value가 계속 null을 가져올 때 원인과 해결 방법 (0) | 2024.02.07 |
[Warning] Spring Security csrf 경고 문장 (0) | 2024.02.06 |
댓글