Как удалить файл из firebase, используя URL-адрес файла в node.js?
Опубликовано: 27 Июля, 2021
Чтобы удалить файл из хранилища firebase, нам нужна ссылка для сохранения файла в хранилище. Поскольку у нас есть только URL-адрес файла, нам нужно создать объект ссылки на файл в хранилище firebase, а затем удалить этот файл.
Удаление файла с использованием URL-адреса файла можно выполнить в два этапа:
- Получите ссылку на хранилище с помощью метода refFromUrl из firebase.storage.
- Удаление файла с использованием ссылки на файл в хранилище, полученной на шаге 1.
Метод refFromUrl возвращает ссылку на этот файл и может принимать в качестве входных данных два типа URL-адреса файла:
- gs: // URL, например gs: //bucket/files/image.png
- URL загрузки взят из метаданных объекта.
Пример 1: Удаление файла по указанному URL-адресу файла с помощью метода refFromURL.
Javascript
var fileUrl = // 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()) |
Выход:
Файл в базе данных до удаления существует: true Файл удален Файл в базе данных после удаления существует: false
Пример 2: Удаление файла с использованием bucket gs: // URL
Javascript
// gs Bucket URL // 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()) |
Выход :
Файл в базе данных до удаления существует: true Файл удален Файл в базе данных после удаления существует: false