Sobes.tech
Junior — Middle

Կարո՞ղ է լինել ֆայլի ուղարկումը պատասխանով հարցումին, օգտագործելով Spring MVC-ով ծրագիր։

sobes.tech AI

Պատասխան AI-ից

Այո, Spring MVC-ում հնարավոր է պատասխանով ֆայլ ուղարկել: Դրա համար սովորաբար օգտագործվում է ResponseEntity՝ մարմնով Resource կամ InputStreamResource ձևով, ինչպես նաև համապատասխան գլխագրեր սահմանելով, օրինակ՝ Content-Type և Content-Disposition:

Ֆայլ վերադարձնող կոնտրոլեր օրինակ՝

@GetMapping("/download")
public ResponseEntity<Resource> downloadFile() throws IOException {
    Path filePath = Paths.get("path/to/file.txt");
    Resource resource = new UrlResource(filePath.toUri());

    return ResponseEntity.ok()
        .contentType(MediaType.APPLICATION_OCTET_STREAM)
        .header(HttpHeaders.CONTENT_DISPOSITION, "attachment; filename= file.txt")
        .body(resource);
}

Այս մոտեցումը թույլ է տալիս հաճախորդին ստանալ ֆայլը որպես կցում՝ ներբեռնելու համար։