用户删除时未触发Firebase云功能

时间:2019-11-27 20:55:20

标签: firebase firebase-authentication google-cloud-functions

我创建了一个firebase云功能,该功能将在删除用户时触发,如firebase文档中所述:

const admin = require('firebase-admin');
const functions = require('firebase-functions');
const firestore = admin.firestore();
admin.initializeApp();

exports.deleteUserData = functions.auth.user().onDelete((event) => {
  const uid = event.uid;
  const firestorePromise = clearFirestoreData(uid);

  return Promise.all([firestorePromise])
      .then(() => console.log(`Successfully removed data for user #${uid}.`)
  );
});

从我的iOS应用程序中删除用户后,请致电:

user.reauthenticate(with: credential) { result, error in
    if let error = error {
        completion(error)
    } else {
        user.delete { error in
            if let error = error {
                completion(error)
            } else {
                completion(nil)
            }
        }
    }
}

在firebase中,从“身份验证”中删除了用户,但未触发该功能。

如果我直接从Firebase控制台的“身份验证”中删除用户,则会触发该功能并成功删除用户的数据。

我正在使用:

"firebase-admin": "^8.8.0",
"firebase-functions": "^3.1.0"

1 个答案:

答案 0 :(得分:2)

其他人也报告了相同的问题。参见讨论here

这似乎是Cloud Functions的错误。如果真是这样,那么堆栈溢出将无济于事。

我鼓励您file a bug report directly with Firebase support,以便他们收集数据并升级为工程技术。