![](/img/trans.png)
[英]Receive file stream through REST web service ResponseEntity<byte[]>
[英]How can we export json as a file through a rest web service?
我通過現有的rest服務將對象作為json返回,但是我希望將json保存到用戶本地磁盤。
您可以在服務器中寫入文件。 並使用以下代碼將文件發送給用戶。
String path = context.getSession().getServletContext().getRealPath("/") + "path to file";
InputStream inputStream = prepairFileStream(response, path);
if (inputStream == null) return;
FileCopyUtils.copy(inputStream, response.getOutputStream());
只有用戶可以選擇將文件保存在其本地磁盤上。
您可以建議瀏覽器(假設用戶使用了瀏覽器)通過在響應中包含Content-Disposition
標頭來提示用戶“另存為...”對話框:
Content-Disposition: attachment; filename="fname.json"
( HTTP標頭字段列表 )
您可以執行以下操作:
testFunction: function(req, res){
var yourJson = {"test":"testing"};
var text={"filename.txt":yourJson};
res.set({'Content-Disposition': 'attachment;filename=\"cards.txt\"','Content-type': 'text/plain'});
res.send(text['filename.txt']);
}
這會將您的json數據作為文件下載到您的下載文件夾中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.