用户删除帐户时使用云功能删除 Firebase Storage 文件夹

时间:2021-07-17 19:23:22

标签: javascript firebase visual-studio google-cloud-functions firebase-storage

我对云功能非常陌生,我正在尝试删除用户在删除其帐户时保存在 Firebase Storage 文件夹中的图像。

我设置了一个触发器,所以当用户删除那里的帐户时,我会得到用户的 UID

然后我得到了我的 Firestore 集合的完整路径,我保存了所有图像 url

之后,在 forEach 循环中,我对每个图像调用 delete,但在终端中出现以下错误,我正在使用 javascript

>  (node:6118) UnhandledPromiseRejectionWarning: Error: Not Found
>      at processTicksAndRejections (internal/process/task_queues.js:97:5)
 

我对这一切都很陌生,因此感谢您的帮助 我的代码是

const functions = require("firebase-functions");
const admin = require("firebase-admin");
const { firestore, auth } = require("firebase-admin");
const { Storage } = require('@google-cloud/storage');
const { user } = require("firebase-functions/lib/providers/auth");

admin.initializeApp();

exports.deleteAllConversati = functions.auth.user().onDelete(async (user) => {
 
    
 const snap = await  admin.firestore().collection(`app_users/cv_Images/user_uid_${user.uid}`).get()
     const bucket = admin.storage().bucket();
     let deletedPomises = [];

 if (snap.size === 0) {
       console.log(`zero`)      
       return null;
   } else {
    snap.forEach( doc => {
        console.log(doc.data().cv_Images)
        const img = doc.data().cv_Images

       return bucket.file(img).delete();
    })
   }
 
    
})

0 个答案:

没有答案
相关问题