将后端返回的经base64编码后的文件内容解码并下载下来:
function base64decodeAndDownload(base64Str, fileName) {
var data = window.atob(base64Str); // base64解码
var arrayBuffer = new ArrayBuffer(data.length);
var array = new Uint8Array(arrayBuffer);
for (var i = 0; i < data.length; i++) {
array[i] = data.charCodeAt(i);
}
var blob = new Blob([array], {type: 'application/octet-stream'});
var url = window.URL.createObjectURL(blob);
var aLink = document.createElement("a");
aLink.style.display = "none";
aLink.href = url;
aLink.setAttribute("download", fileName); // fileName为下载保存的文件名
document.body.appendChild(aLink);
aLink.click();
document.body.removeChild(aLink);
window.URL.revokeObjectURL(url);
}
// 用法示例:
var json = {"errorCode":0,"errMessage":"","fileContent":"aGVsbG8gd29ybGQh"};
base64decodeAndDownload(json.fileContent, '数据.txt');