Necesito cambiar el tamaño de las imágenes almacenadas en firebase, pero estas imágenes están en diferentes carpetas como esta:
-bucket -user -imagesnecesito ir a las imágenes de ciertos usuarios y me gustaría aplicar este script para cambiar el tamaño de las imágenes
const storage = await getStorage(); const bucketName = `$socialmediaAPG.appspot.com/userId/images/`; const bucket = storage.bucket(bucketName); const files = await bucket.getFiles(); for (const file of files[0]) { const isImage = file.name.toLowerCase().includes('jpg') || file.name.toLowerCase().includes('jpeg'); const isThumb = file.name.toLowerCase().includes('thumbs'); if (isImage && !isThumb) { console.info(`Copying ${file.name}`); const metadata = await file.getMetadata(); await file.copy(file.name); await file.setMetadata(metadata[0]); } }Estoy recibiendo este error:
Copiando userId/images/image1.jpg Error: No existe tal objeto: socialmediaAPG.appspot.com/userId/images/image1.jpg
Esto parece incorrecto:
file.copy(file.name) El argumento que pasa a file.copy es el nombre del archivo de destino , por lo que está tratando de copiar el archivo en sí mismo.
Probablemente desee agregar su sufijo de thumbs personalizado al nombre del archivo de destino con algo como
file.copy(file.name+"thumbs")Para el cambio de tamaño real, recomiendo consultar otras preguntas sobre cómo cambiar el tamaño de las imágenes en Cloud Storage .