Company logo
  • Empleos
  • Bootcamp
  • Acerca de nosotros
  • Para profesionales
    • Inicio
    • Empleos
    • Cursos y retos
    • Preguntas
    • Profesores
    • Bootcamp
  • Para empresas
    • Inicio
    • Nuestro proceso
    • Planes
    • Pruebas
    • Nómina
    • Blog
    • Calculadora

0

150
Vistas
Download File using express and fetch doesn't work

I try to download a file using nodejs and Javascript. When I call the URL in the Browser, the file gets downloaded. When I call this Endpoint in my javascript file using fetch, the download doesn't work

NodeJS Endpoint

app.get("/download", function (req, res, next) {
    res.download(
        filepath
    );
});

Javascript Call

const downloadFile = async (path) => {
await fetch("http://localhost:8080/download", {
    method: "Get",
})
    .then((response) => {
        console.log(response);
    })
    .catch((error) => {
        console.log(error);
    });

};

Do you have any suggestions?

Thank you very much!

7 months ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

When you make a request using Ajax then the response is passed back to the JavaScript code for handling.

If you want to do something with the file the server has sent you, then you need to write JavaScript to do something with it.

Your JavaScript logs the response object then stops.

The browser will only automatically render it in the viewport / save it to downloads if you type the URL into the address bar / click a link / etc. Doing Ajax explicitly avoids that automatic handling.

So the solution here is: Don't use Ajax. Use a link, or assign a value to location, etc.

7 months ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar empleo Planes Nuestro proceso Comercial
Legal
Términos y condiciones Política de privacidad
© 2023 PeakU Inc. All Rights Reserved.