fix downloading document

This commit is contained in:
Julien Fastré 2021-12-15 22:14:13 +01:00
parent 44d38bcef5
commit 6501a0148e

View File

@ -34,9 +34,6 @@ var download = (button) => {
key, url
;
console.log('keyData', keyData);
console.log('ivData', ivData);
button.textContent = labelPreparing;
window.fetch(urlGenerator)
@ -48,36 +45,25 @@ var download = (button) => {
}
})
.then(data => {
url = data.url;
if (keyData.length > 0) {
return window.crypto.subtle.importKey('jwk', keyData, { name: algo, iv: iv}, false, ['decrypt']);
}
return Promise.resolve(undefined);
return window.fetch(data.url);
})
.then(nKey => {
key = nKey;
return window.fetch(url);
})
.then(r => {
console.log('r', r);
if (r.ok) {
return r.arrayBuffer();
} else {
throw new Error(r.status + r.statusText);
.then(response => {
if (response.ok) {
return response.arrayBuffer();
}
throw new Error(response.status + response.statusText);
})
.then(buffer => {
console.log('buffer', buffer);
if (keyData.length > 0) {
if (keyData.alg !== undefined) {
return window.crypto.subtle
.importKey('jwk', keyData, { name: algo, iv: iv}, false, ['decrypt'])
.then(key => {
return window.crypto.subtle.decrypt({ name: algo, iv: iv }, key, buffer);
});
}
return Promise.resolve(buffer);
})
.then(decrypted => {
console.log('decrypted', decrypted);
var
blob = new Blob([decrypted], { type: mimeType }),
url = window.URL.createObjectURL(blob)
@ -96,7 +82,6 @@ var download = (button) => {
button.click();
})
.catch(error => {
console.log(error);
button.textContent = "";
button.appendChild(document.createTextNode("error while handling decrypted file"));
})