java / intermediate
Snippet
Flexible API-Antworten mit ResponseEntity
ResponseEntity bietet die vollständige Kontrolle über die HTTP-Antwort, einschließlich Statuscode, Header und Body. Dies ist essenziell für fortgeschrittene Szenarien wie Dateidownloads oder benutzerdefinierte Header-Manipulationen.
snippet.java
1
2
3
4
5
6
7
8
9
@GetMapping("/download")public ResponseEntity<byte[]> downloadFile() {byte[] content = fileService.getFileBytes();return ResponseEntity.ok().header(HttpHeaders.CONTENT_DISPOSITION, "attachment; filename=\"report.pdf\"").contentType(MediaType.APPLICATION_PDF).contentLength(content.length).body(content);}
spring
Erklärung
1
ResponseEntity.ok()
Eine statische Builder-Methode für eine Antwort mit dem HTTP-Status 200 (OK).
2
HttpHeaders.CONTENT_DISPOSITION
Standard-Header, um einen Dateinamen für den 'Speichern unter'-Dialog des Browsers vorzuschlagen.
3
body(content)
Setzt die Nutzlast der Antwort, in diesem Fall ein Byte-Array für eine PDF-Datei.