if (exportdata != null) {
var blob = new Blob([s2ab(exportdata.filedata)], {
type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
});
//saveAs provided by FileSaver.js
saveAs(blob, exportdata.filename);
framework.displayAlert('ERRORS.SUCCESS', 'Data downloaded successfully');
} else {
framework.displayAlert('ERRORS.ERROR', data.error);
}
function s2ab(s) {
var buf = new ArrayBuffer(s.length);
var view = new Uint8Array(buf);
for (var i = 0; i != s.length; ++i) view[i] = s.charCodeAt(i) & 0xFF;
return buf;
}
在saveAs()
中,我给出了文件类型和文件名。它将使用给定的文件名保存在downloads文件夹中。但我想将其保存在此路径的D://Reports/sample/
中。有没有实现这一目标的选择?
答案 0 :(得分:2)
无法完成。出于明显的安全原因,浏览器不允许仅由用户将文件保存到特定位置(通过右键单击->另存为),不允许您设置目标文件夹。
否则,想象任何站点都可以在计算机上的任何位置保存文件。
如果需要将Blob保存到特定位置,则必须在服务器端进行操作。将Blob上载到您的服务器,然后就可以将其保存到任何位置。