在firebase云函数中,如何获取已登录的应用程序用户

在firebase云函数中,如何获取已登录的应用程序用户,firebase,firebase-authentication,google-cloud-functions,Firebase,Firebase Authentication,Google Cloud Functions,我们正在firestore中使用云功能创建用户配置文件 当新用户创建云功能将触发时,我们将用户信息写入firebase集合,但现在在我的firebase中,我们有2个应用程序,需要将用户配置文件存储在两个不同的集合中问题是如何通过用户登录应用程序A或应用程序B来识别哪个应用程序是用户 有什么方法可以做到这一点吗?您需要向云功能发送用户的令牌ID,您可以执行以下操作: firebase.auth().currentUser.getIdToken(true).then(function (token

我们正在firestore中使用云功能创建用户配置文件
当新用户创建云功能将触发时,我们将用户信息写入firebase集合,但现在在我的firebase中,我们有2个应用程序,需要将用户配置文件存储在两个不同的集合中
问题是如何通过用户登录应用程序A或应用程序B来识别哪个应用程序是用户

有什么方法可以做到这一点吗?

您需要向云功能发送用户的令牌ID,您可以执行以下操作:

firebase.auth().currentUser.getIdToken(true).then(function (token) {
    // Send the token
})
然后,在云函数上,您需要获取,您可以执行以下操作:

admin.auth().verifyIdToken(idToken).then(function(decodedToken) {
    var uid = decodedToken.uid;
})

使用uid,您可以使用
admin.auth().getUser(uid)
获取当前用户记录。

您的用户是否在这两个集合上共享uid?调用cloud函数时不能使用标志来标识它来自何处吗?好的,这是一个好主意,但在我的例子中,当firebase创建新的身份验证时,cloud函数将触发。那么,在这里我如何添加一个标志呢?你能分享你的云函数的一些代码吗?它是如何被创建事件调用的?