我有春天控制器是这样的:
@RequestMapping(value = "/download", method = RequestMethod.GET)
public byte[] getFilesInZIP(@RequestParam("filenames[]") String[] filenames){
byte[] file = service.packFilesToZIPArchiveAndReturnAsByteArray(filenames);
return file;
}
而现在,当我创建前端,我想一个数组,包括文件名发送到其中包含我选择文件控制器和下载ZIP档案。
( 要明确:让我们假设我想下载中心3个文件:A.TXT,b.txt和c.txt;我使用jquery与阵列发送AJAX请求:[“A.TXT”,“b.txt”,' c.txt']作为阿贾克斯的数据。现在,我想春天控制器找到这些文件,将它们打包到ZIP压缩包,并将其发送存档我作为字节[]响应)
下面是示例jQuery代码:
var tab = ['a.txt', 'b.txt', 'c.txt'];
jQuery.ajax({
url: "http://localhost:8080/download",
type: "GET",
data: {
'filenames': tab
},
error : function(jqXHR, textStatus, errorThrown) {
alert('problem');
}
});
但我不知道如何处理这种针对这一存档ZIP文件发送给用户。 当我试图做到这一点使用“在HTML一切S为好。
我已经做了研究,但没有发现任何有用的。 有哪些下载的文件的一些jQuery插件,但像URL:本地主机/ file.txt的; 我想,我说我上待下载文件和第一,另外与文件名控制器发送阵列。