Para eliminar un archivo del almacenamiento de Firebase, necesitamos una referencia para almacenar el archivo en el almacenamiento. Como solo tenemos la URL del archivo, necesitamos crear un objeto de referencia del archivo en el almacenamiento de Firebase y luego eliminar ese archivo.
La eliminación de un archivo usando la URL del archivo se puede hacer en dos pasos:
- Obtenga la referencia al almacenamiento mediante el método refFromUrl de firebase.storage.
- Eliminando el archivo usando la referencia del archivo en almacenamiento obtenida del Paso 1.
El método refFromUrl devuelve una referencia a ese archivo y puede tomar dos tipos de URL de archivo como entrada:
- gs:// URL, por ejemplo, gs://bucket/files/image.png
- Descargue la URL tomada de los metadatos del objeto.
Ejemplo 1: Eliminar un archivo de la URL de archivo dada usando el método refFromURL.
Javascript
var fileUrl = 'https://firebasestorage.googleapis.com/b/bucket/o/images%20geeksforgeeks.jpg'; // Create a reference to the file to delete var fileRef = storage.refFromURL(fileUrl); console.log("File in database before delete exists : " + fileRef.exists()) // Delete the file using the delete() method fileRef.delete().then(function () { // File deleted successfully console.log("File Deleted") }).catch(function (error) { // Some Error occurred }); console.log("File in database after delete exists : " + fileRef.exists())
Producción:
File in database before delete exists : true File Deleted File in database after delete exists : false
Ejemplo 2: Eliminación de un archivo usando el depósito gs:// URL
Javascript
// gs Bucket URL var fileUrl = 'gs://bucket/geeksforgeeks/image.png'; // Create a reference to the file to delete var fileRef = storage.refFromURL(fileUrl); console.log("File in database before delete exists : " + fileRef.exists()) // Delete the file using the delete() method fileRef.delete().then(function () { // File deleted successfully console.log("File Deleted") }).catch(function (error) { // Some Error occurred }); console.log("File in database after delete exists : " + fileRef.exists())
Producción :
File in database before delete exists : true File Deleted File in database after delete exists : false