I am new to Javascript, I want to download a file that comes from a dynamic url after the result of a promise, it is a generated pdf which I am trying to download with the following call but unable to make it work as download doesn't start.
<button (click)='downloadMyFile()'>Download</button>
downloadMyFile(){
//url
.then((result)=>{
//result is contains a url www.abc.com/file234
window.location.href = result
})
.catch((error)=>{
//myerror
})
}
Here is plunk
You can force download file like this:
const link = document.createElement('a');
link.href = result;
link.download = 'download';
link.target = '_blank';
link.click();
Simply create anchor tag, set its href
and download
attributes and trigger click
event.
Also note that this is not really about URL ending with extension or not - it is more about the headers that you send with the file response (namely Content-Type
and Content-Disposition
).
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With