Облачные функции Удалить папку: TypeScript - PullRequest
0 голосов
/ 01 декабря 2018

Моя корзина памяти budget-32bfc содержит следующие папки;--+ Folder1 --+ Folder2 --+ Folder3

Я хочу удалить Папка 1 из облачных функций.

ПОПЫТКА 1:

gcs.bucket("budget-32bfc").file('Folder1').delete().then(() => {
        console.log("Folder Deleted");
    }).catch(function (error) {
        console.log("Error listing users:", error);
    });

ПОПЫТКА 2:

admin.bucket("budget-32bfc").file('Folder1').delete().then(() => {
        console.log("Folder Deleted");
    }).catch(function (error) {
        console.log("Error listing users:", error);
    });

Обе попытки дали мне 404 Error: 'No such object: budget-32bfc/Folder1'.

Как удалить папку ??

Ответы [ 2 ]

0 голосов
/ 09 мая 2019

Версия 1.7.x имеет следующий метод, который возвращает Обещание:

deleteFiles (запрос, обратный вызов)

Он попытается удалить каждый файл внутри указанногопапка (папки тоже).Если удалить один файл не удается, процесс останавливается.(используйте force: true, чтобы переопределить это поведение).

bucket.deleteFiles({
    prefix: `${userId}/images`
})
.catch( (err) => {
    console.log(`Failed to delete all images of user ${userId}`);
});

Официальная документация: Хранилище - deleteFiles

Другое решение, найденное здесь: click

(Примечание: я не могу пометить эту ветку как дубликат, так как у меня всего 13 повторений, пожалуйста, прекратите удалять мой комментарий, потому что другие могут это увидеть, спасибо)

0 голосов
/ 01 декабря 2018

В облачном хранилище отсутствует понятие «папка», это просто часть имени каждого файла.Поэтому вам придется удалить все файлы, которые начинаются с Folder1/.Как только вы это сделаете, папка также исчезнет.

См. Также:

...