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

298
Visualizações
Elemento de almacenamiento de Firebase no encontrado usando getFiles o deleteFiles

Estoy usando una función de Firebase para eliminar archivos cuando se elimina un elemento de Firestore, cada entrada de FireStore tiene 2 archivos: image.jpg e image_thumb.jpg

Estoy tratando de eliminar ambos archivos usando el prefijo del depósito, sin embargo, los archivos no se encuentran, he intentado usar el método getFiles para ver los elementos antes de eliminarlos, pero esto tampoco arroja resultados.

 const bucket = admin.storage().bucket() const not_working = await bucket.getFiles({prefix: `photos/${userId}/${photoId}`}) const not_working = await bucket.deleteFiles({prefix: `photos/${userId}/${photoId}`})

Si elimino la referencia ${photoId} y solo busco la carpeta, obtengo un resultado correcto

 const bucket = admin.storage().bucket() const working = await bucket.getFiles({prefix: `photos/${userId}/`})

Esto devuelve los siguientes datos

 [ > [ > File { > _events: [Object: null prototype] {}, > _eventsCount: 0, > _maxListeners: undefined, > metadata: [Object], > baseUrl: '/o', > parent: [Bucket], > id: 'photos%2FkLxGzah8zc7Vbrl0c3iLic8tkqH2%2Fcad2ce98-dfa7-4611-9a88-913328ab4590.png', > createMethod: undefined, > methods: [Object], > interceptors: [], > pollIntervalMs: undefined, > create: undefined, > bucket: [Bucket], > storage: [Storage], > kmsKeyName: undefined, > userProject: undefined, > name: 'photos/kLxGzah8zc7Vbrl0c3iLic8tkqH2/cad2ce98-dfa7-4611-9a88-913328ab4590.png', > acl: [Acl], > instanceRetryValue: true, > instancePreconditionOpts: undefined, > [Symbol(kCapture)]: false > }, > File { > _events: [Object: null prototype] {}, > _eventsCount: 0, > _maxListeners: undefined, > metadata: [Object], > baseUrl: '/o', > parent: [Bucket], > id: 'photos%2FkLxGzah8zc7Vbrl0c3iLic8tkqH2%2Fcad2ce98-dfa7-4611-9a88-913328ab4590_thumb.png', > createMethod: undefined, > methods: [Object], > interceptors: [], > pollIntervalMs: undefined, > create: undefined, > bucket: [Bucket], > storage: [Storage], > kmsKeyName: undefined, > userProject: undefined, > name: 'photos/kLxGzah8zc7Vbrl0c3iLic8tkqH2/cad2ce98-dfa7-4611-9a88-913328ab4590_thumb.png', > acl: [Acl], > instanceRetryValue: true, > instancePreconditionOpts: undefined, > [Symbol(kCapture)]: false > } > ] > ]
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Si elimino la referencia ${photoId} y solo busco la carpeta, obtengo un resultado correcto

Este es realmente el comportamiento previsto, como se muestra en la documentación de Cloud Storage (consulte la pestaña "Node.js"): no debe incluir, en el valor del prefix , la última parte del nombre del archivo (es decir, la parte después de la última / , o, si usamos el paradigma del árbol de directorios, el propio nombre del archivo, sin los directorios principales).

El ejemplo de código contiene estas explicaciones:

 /** * This can be used to list all blobs in a "folder", eg "public/". * * The delimiter argument can be used to restrict the results to only the * "files" in the given "folder". Without the delimiter, the entire tree under * the prefix is returned. For example, given these blobs: * * /a/1.txt * /a/b/2.txt * * If you just specify prefix = 'a/', you'll get back: * * /a/1.txt * /a/b/2.txt * * However, if you specify prefix='a/' and delimiter='/', you'll get back: * * /a/1.txt */
about 4 years ago · Juan Pablo Isaza Relatório
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