在我使用 Angular 以及 Node.js 和 Firebase 开发的应用程序中,我需要检测用户中发生的事件。作为包容、改变和排除。
有没有办法通过在Cloud Functions中创建的函数来检测用户何时被删除、更改或插入?
我知道您可以使用在 Cloud Functions 中创建的函数来检测数据库事件。我想在通过 Firebase Console > 项目 > 身份验证完成操作时检测用户何时被更改、删除或输入。
这个意义上的东西:
exports.userChanged = functions.user
.onCreate((snapshot, context) => {})
OnDelete()
OnCreate()
OnChange()
有
onCreate
和onDelete
,你可以从docs阅读。
对于更新情况,您应该依赖 RTD。实际上,您可以完全依赖 RTD。
//Create a user on the rtd
functions.auth.user().onCreate((user) => {
return usersRef.child(user.uid).set(user);
});
//Update the user by listening to a change on the RTD
functions.database.ref('/users/{uid}')
.onWrite((change, context) => {
//If you needed it you can update the user
admin.auth().updateUser(uid, {
});
//if some condition, then delete it
admin.auth().deleteUser(uid)
//do more
});
使用更新用户选项,您甚至可以禁用该帐户,看看这个其他答案
您可以直接在 Functions 中使用 admin sdk,这是 doc