I have a Buffer that has the contains a PDF that I have not been able to successfully download. Every time I attempt to open the PDF, it fails to open. Here is the code I am using to download the file:
const content = new Blob(attach.content.data, { type: attach.contentType });
const encodedUri = window.URL.createObjectURL(content);
const link = document.createElement("a");
link.setAttribute("href", encodedUri);
link.setAttribute("download", attach.filename);
link.click();
Here is what the attach object looks like:
Here is what the Blob looks like:
Halp, plx!!!1
I have a Buffer that has the contains a PDF that I have not been able to successfully download. Every time I attempt to open the PDF, it fails to open. Here is the code I am using to download the file:
const content = new Blob(attach.content.data, { type: attach.contentType });
const encodedUri = window.URL.createObjectURL(content);
const link = document.createElement("a");
link.setAttribute("href", encodedUri);
link.setAttribute("download", attach.filename);
link.click();
Here is what the attach object looks like:
Here is what the Blob looks like:
Halp, plx!!!1
Share Improve this question edited Apr 3, 2021 at 16:18 Juliana Hill asked Apr 3, 2021 at 15:49 Juliana HillJuliana Hill 4404 silver badges15 bronze badges1 Answer
Reset to default 7The problem was that I was not converting the Node.js Buffer to a browser readable ArrayBuffer:
const data = Uint8Array.from(attach.content.data);
const content = new Blob([data.buffer], { type: attach.contentType });
const encodedUri = window.URL.createObjectURL(content);
const link = document.createElement("a");
link.setAttribute("href", encodedUri);
link.setAttribute("download", attach.filename);
link.click();