【发布时间】:2021-05-19 16:49:22
【问题描述】:
我正在构建一个简单的前端网页,它将使用 firebase 来管理用户登录。据我所见,当有人登录到 Firebase 时,他们将保持登录状态 1 小时,之后我将不得不更新令牌。
我正在使用颤振,我打算将这个“更新令牌”存储在客户端,这样,我就可以要求 firebase 更新用户会话,而无需要求用户每小时登录一次。
我的问题如下:
- 这是一种好的/安全的方法吗?
- 我应该如何使用 firebase 管理用户会话?
【问题讨论】:
我正在构建一个简单的前端网页,它将使用 firebase 来管理用户登录。据我所见,当有人登录到 Firebase 时,他们将保持登录状态 1 小时,之后我将不得不更新令牌。
我正在使用颤振,我打算将这个“更新令牌”存储在客户端,这样,我就可以要求 firebase 更新用户会话,而无需要求用户每小时登录一次。
我的问题如下:
【问题讨论】:
Firebase SDK 会在后台自动处理 ID 令牌的更新。您不必为此编写任何代码。
您也不应该自己保留任何令牌,因为 Firebase SDK 也会自动执行此操作,并在应用重新启动时恢复用户身份验证状态。
您只需发送邮件至listen to the authentication state。此侦听器通常优于(仅)依赖FirebaseAuth.instance.currentUser,因为身份验证状态可能会更改,并且侦听器会确保您的代码在发生这种情况时自动运行。
【讨论】: