0
在我的Javascript代碼中,我有一個映射數組的文檔位置(使用Knockout)。使用javascript編碼並下載倍數PDF文檔
var mappedArray = $.map(self.checkedDocs(), function (item) { return item.pdfloc() });
這是可能的Zip和使用JavaScript下載這些文件?
在我的Javascript代碼中,我有一個映射數組的文檔位置(使用Knockout)。使用javascript編碼並下載倍數PDF文檔
var mappedArray = $.map(self.checkedDocs(), function (item) { return item.pdfloc() });
這是可能的Zip和使用JavaScript下載這些文件?
我結束了在服務器上壓縮和解的文件,一旦它們拉上我在客戶端進行下載:
self.download = function() {
var mappedArray = $.map(self.checkedDocs(), function (item) { return item.pdfloc() });
self.service.zipDocs(ko.toJSON(mappedArray), function (data) {
if (data == "Error") {
$("#modalResult").text("Error has occured, please try later.");
$("#modalConfirmation").dialog();
}
else if (data == "Success") {
$("#modalResult").text("Your documents are being download.");
$("#modalConfirmation").dialog();
}
});
}
和API調用:
self.zipDocs = function (docs, callback) {
$.ajax({
url: "http://api.xxx.com/functions/zip",
type: "POST",
contentType: "application/json",
dataType: "binary",
data: docs,
processData: false,
success: function (blob) {
saveAs(blob, "ZippedDocuments.zip");
callback("Success");
},
error: function (data) {
callback("Error");
}
});
}
和API C#cofr:
[HttpPost]
[Route("zip")]
public HttpResponseMessage ZipDocs([FromBody] string[] docs)
{
using (ZipFile zip = new ZipFile())
{
zip.AddFiles(docs, false, "");
return ZipContentResult(zip);
}
}
我希望這將有助於那些面臨同樣問題的人。
https://stuk.github.io/jszip/ – levi
謝謝你,我會試試看,並會告訴你它是怎麼回事。謝謝! – user3378165
@levi我把它和他們的例子一起工作(創建一個文件),但我不知道如何用我的文檔列表編號,你能寫一個例子嗎? – user3378165