Junior — Middle
É possível enviar um arquivo em resposta a uma solicitação numa aplicação que utiliza Spring MVC?
sobes.tech IA
Resposta da IA
Sim, no Spring MVC é possível enviar um ficheiro em resposta a uma solicitação. Para isso, normalmente usa-se ResponseEntity com o corpo na forma de Resource ou InputStreamResource, e também define-se os cabeçalhos apropriados, como Content-Type e Content-Disposition.
Exemplo de um controlador que devolve um ficheiro:
@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);
}
Esta abordagem permite ao cliente obter o ficheiro como anexo para download.