Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

247
Vistas
Extensión Chrom: onDeterminingFilenme interfiere con todas las descargas

Estoy codificando una extensión que descarga elementos con nombres específicos. Actualmente, tengo dos tipos de elementos para descargar:

  • Elementos que tienen el enlace a la URL del archivo, para que pueda descargarse directamente y su nombre determinado por chrome.downloads.download (tipo A)
  • Elementos que no tienen el enlace a la URL del archivo y tuvieron que descargarse a través de un enlace de descarga directa. El proceso de descarga debe iniciarse por separado y su nombre de archivo debe cambiarse con chrome.downloads.onDeterminingFilename.addListener (tipo B)

El problema es que chrome.downloads.onDeterminingFilename.addListener interfiere con todas las descargas, independientemente de los parámetros establecidos. Solo quiero que cambie el nombre del archivo cuando se descarga el elemento de tipo B.

Resumen básico de mi código

 chrome.downloads.download({ //type A items url: item.imageLink, //set linkURL filename: setName //set name }); //item will be downloaded with *setName* chrome.downloads.onDeterminingFilename.addListener((downloadItem, suggest) => { //type B items //item will be intercepted, its name being its original filename if (item != null && item.type == "B" && downloadItem.url == item.imageLink) { //check linkURL suggest({filename: setName, conflictAction: "uniquify"}); //item's filename will be changed to *setName* } });

A menos que elimine chrome.downloads.onDeterminingFilename completo, el archivo descargado tendrá su nombre de archivo original, independientemente del tipo que sea.

Pensé en 3 posibles soluciones:

  1. Fuerza bruta el chrome.downloads.onDeterminingFilename , haz que cambie el nombre de cada elemento descargado.
  • Problema: estropeará otras descargas, incluidas las de otras extensiones
  1. Elimine chrome.downloads.onDeterminingFilename cuando no sean elementos de tipo B y agréguelo cuando lo sea.
  • Problema: no hay garantía de cuándo se eliminará para no interferir con otros elementos que se descargan simultáneamente cuando se está ejecutando
  1. Descubra cómo descargar elementos de tipo B sin usar chrome.downloads.onDeterminingFilename
  • Problema: lo probé, no encontré nada sobre la conversión de enlaces de descarga directa a URL de archivo, especialmente si el enlace de descarga directa se genera de forma única

¿Alguna otra sugerencia o estoy haciendo todo esto mal?

about 4 years ago · Juan Pablo Isaza
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda