Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

273
Visualizações
¿Cómo descargo un archivo en javascript sin desconectar los sockets web o mostrar una nueva pestaña?

Después de un trabajo de servidor de larga duración, necesito activar automáticamente una descarga de archivo en el navegador de mi usuario. También tengo conexiones websocket activas que debo mantener en caso de que el usuario esté realizando diferentes tareas en mi aplicación web. Originalmente estaba haciendo esto:

 window.location.replace(downloadLink);

Sin embargo, después de ejecutar esa línea, extrañaría los mensajes de websocket. Esta pregunta trata con el mismo problema: Al hacer clic en la etiqueta A con Href, el zócalo se desconecta

Entonces probé esto:

 window.open(downloadLink, "_blank");

Sin embargo, esto muestra una nueva pestaña abierta y la cierra inmediatamente. Es muy discordante si el usuario estaba trabajando en otra cosa. También he probado esto:

 axios.get(downloadLink, { responseType: "blob" }).then((response) => { const fileURL = window.URL.createObjectURL(new Blob([response.data])); const docUrl = document.createElement("a"); docUrl.href = fileURL; docUrl.setAttribute("download", fileName); document.body.appendChild(docUrl); docUrl.click(); });

Esto funciona pero descarga el archivo en segundo plano. Este archivo es muy grande, por lo que me gustaría que el usuario pudiera ver el progreso de la descarga en la barra de descargas en la parte inferior de la página.

¿Alguien sabe cómo descargar un archivo sin desconectar los sockets web o abrir una nueva pestaña mientras se muestra el progreso de descarga del archivo del navegador?

about 4 years ago · Juan Pablo Isaza
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda