@PostMapping(path = "{userId}", consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
public CommonResponse<CPostsDTO, String> writePost(@PathVariable Long userId,
@ModelAttribute CPostRequest request,
@RequestPart(value = "files", required = false) List<MultipartFile> files
){
log.info("files: {}", files); //null
return new CommonResponse(cPostsService.saveCPost(userId, request.getContent(), files), ResultMessage.RESULT_OK.getVal());
}
modelattribute으로 한꺼번에 받는 방식으로 변경했다. 슬프게도 스웨거로는 따로따로 text 형식, file 형식 지정할 수 없어서 포스트맨으로만 따로 요청을 넣어야하지만,,
public class CPostRequest {
@NotNull
private String content;
@Size(max = 5)
private List<MultipartFile> imgs;
}
그나저나 왜 RequestPart으로 이미지가 안 넘어온건지는 여전히 의문..