检测来自用户Firebase身份验证的事件
在我在Angular以及Node.js和Firebase中开发的应用程序中,我需要检测用户中发生的事件。作为包容、改变和排斥。
有没有一种方法可以检测用户何时通过云功能中创建的功能被删除、更改或插入?
我知道您可以通过在Cloud Functions中创建的函数来检测数据库事件。当通过Firebase控制台>项目>身份验证执行操作时,我想检测用户何时被更改、删除或输入。
某种意义上的东西:
exports.userChanged = functions.user
.onCreate((snapshot, context) => {})
OnDelete()
OnCreate()
OnChange()
最好的方法是什么
有onCreate
和onDelete
,您可以从文档中读取。
对于更新情况,您应该依赖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
});
使用更新用户选项,你甚至可以禁用帐户,看看这个其他答案
您可以直接使用函数内部的admin-sdk,这是文档