역할


1. 구조

@RestController
@RequiredArgsConstructor
@RequestMapping("/api/uploads")
publicclassImageUploadController {

privatefinalFileStorageServicefileStorageService;

    @PostMapping("/images")
publicResponseEntity<?>upload(
            @RequestParam("file")MultipartFilefile,
HttpServletRequestreq
    ) {
Stringpath=fileStorageService.storeEditorImageToTmp(file,"tasks");

Stringbase=req.getScheme()+"://"+req.getServerName()+
                ((req.getServerPort()==80||req.getServerPort()==443)?"" :":"+req.getServerPort());

returnResponseEntity.ok(Map.of("url",base+path));
    }
}

2. 설명

  1. 업로드 처리

  2. 접근 URL 생성

  3. 응답

  4. 의존성


3. 포인트