یکی از نیازمندی هام این بود که یک متنی رو در قالب فایل برای دانلود، به کاربر ارایه بدم، بعنوان مثال فرض کنیم یه سریال نامبر داریم که کاربر میتونه به صورت فایل متنی دانلود اش کنه. بعد از کلی گشت و گذار به این راه حل رسیدم که کار میکنه:
@GetMapping(path = "/file/get", produces = MediaType.APPLICATION_OCTET_STREAM_VALUE)
public ResponseEntity verificationFile() {
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.TEXT_PLAIN);
headers.setContentDispositionFormData("attachment", "test.txt");
InputStreamResource inputStreamResource = new InputStreamResource(new ByteArrayInputStream("Hello File".getBytes(StandardCharsets.UTF_8)));
return ResponseEntity.ok().headers(headers).body(inputStreamResource);
}
بعد از فراخوانی آدرس http://{SERVER-ADDRESS}:{PORT}/file/get فایلی با عنوان test.txt و با محتوای Hello File دانلود میشه.
هیچ نظری موجود نیست:
ارسال یک نظر