DEV Community

Alex Blinov
Alex Blinov

Posted on • Originally published at


How to download files with Axios

A simple example using the Blob() constructor:

export function someFunction(values) {
  return (dispatch) => {
    const method = 'GET';
    const url = 'http://go.api/download_file';
        responseType: 'blob', //important
      .then(({ data }) => {
        const downloadUrl = window.URL.createObjectURL(new Blob([data]));
        const link = document.createElement('a');
        link.href = downloadUrl;
        link.setAttribute('download', ''); //any other extension
Enter fullscreen mode Exit fullscreen mode

Oldest comments (1)

msorok profile image
Maria Sorokina

Hi! Thank you very much for this solution!
Is there a way to, instead of downloading the file, put it in a variable to send it to the server side? Thanks!

11 Tips That Make You a Better Typescript Programmer


1 Think in {Set}

Type is an everyday concept to programmers, but it’s surprisingly difficult to define it succinctly. I find it helpful to use Set as a conceptual model instead.

#2 Understand declared type and narrowed type

One extremely powerful typescript feature is automatic type narrowing based on control flow. This means a variable has two types associated with it at any specific point of code location: a declaration type and a narrowed type.

#3 Use discriminated union instead of optional fields


Read the whole post now!