firebase - 删除用户时不会触发 Firebase 云功能
问题描述
如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"
解决方案
其他人报告了同样的问题。请参阅此处的讨论。
这似乎是 Cloud Functions 的一个错误。如果是这种情况,那么 Stack Overflow 无能为力。
我会鼓励您直接向 Firebase 支持提交错误报告,以便他们可以收集数据并升级到工程部门。
推荐阅读
- c# - Threadpool 不同的返回结果?
- rxjs - 如何使用减少/扫描(在 NGRX/NGXS 中)从可观察的数组中制表/汇总总值
- python - Pandas:执行多个复杂聚合的惯用方式?
- java - 如何使用脚本通过 Java API 更新 elsaticsearch 文档中的一个文件?
- python - 从特定目录读取多个图像,预先设置并使用 python 和 opencv 将它们保存到另一个目录
- java - 如何在 Azure Devops 的 Maven@3 任务中将 maven 选项传递给 JaCoCo 工具
- linux - 如何将汇编代码修补到exe文件的末尾
- c# - 如何在 Xamarin.forms C# 中检查长时间下载的数据
- python - 使用 stringvar 的 Python 标签
- c# - 为什么我的asp页面执行缓存代码