我如何在用户登录时触发Firestore云功能触发?

时间:2018-11-11 12:31:38

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

默认情况下,云功能不接受onLoging,我如何“绕过”此限制,以便每次用户“联机”时都可以运行云功能。

到目前为止,我的想法是在登录时运行一个创建文档并收听它,但是当用户未登录而是使用上次会话时会发生什么?

我是否在isLogged函数上运行相同的发布请求?该功能可以在应用程序运行时多次运行,因此并不是最佳选择。

在应用程序初始化(角度7)上运行该功能是这里的解决方案吗?

2 个答案:

答案 0 :(得分:0)

  

您可以使用functions.auth.user()。onCreate()事件处理函数创建一个在创建Firebase用户时触发的函数:

exports.sendWelcomeEmail = functions.auth.user().onCreate((user) => {
  // ...
});

https://firebase.google.com/docs/functions/auth-events?hl=en-419

,但是您可以选择一种方法,即在用户登录时在客户端中执行写操作。

答案 1 :(得分:0)

您只能定义应用程序的“会话”。没有可用于触发云功能的通用定义。 Firebase身份验证也无济于事,因为用户“永远”登录,直到您的代码显式注销用户为止(它会每小时自动刷新用户的身份验证令牌)。

您将必须编写自己的代码,以根据用户决定“登录”或“注销”的任何规范来解决此问题。

相关问题