[SpringBoot] Multipart file 업로드 시 "Content type 'application/octet-stream' not supported" 에러

DAUN JO·2021년 8월 14일
0

Log

목록 보기
2/4
post-custom-banner

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()));
    }



profile
🍕
post-custom-banner

0개의 댓글