У меня есть закодированные данные base64 из ответа API и сохранены в переменной encodedBase64.
let encodedBase64 = 'некоторые длинные закодированные base64 данные';
function base64ToArrayBuffer(base64) {
var binaryString = window.atob(base64);
console.log('binaryString ', binaryString);
var binaryLen = binaryString.length;
var bytes = new Uint8Array(binaryLen);
for (var i = 0; i < binaryLen; i++) {
var ascii = binaryString.charCodeAt(i);
bytes[i] = ascii;
}
return bytes;
}
function saveByteArray(reportName, byte) {
var blob = new Blob([byte], {type: "application/pdf"});
var link = document.createElement('a');
link.href = window.URL.createObjectURL(blob);
var fileName = reportName;
link.download = fileName;
link.click();
};
var sampleArr = base64ToArrayBuffer(encodedBase64);
saveByteArray("Sample Report", sampleArr);
после выполнения этого кода я могу скачать pdf имена файлов SampleReport.pdf
, но когда я открываю это, отображается ошибка Failed to load PDF document.
, что не так в моем коде?