【问题标题】:How to handle properly firebase auth?如何正确处理firebase身份验证?
【发布时间】:2020-12-22 22:00:17
【问题描述】:

我找不到正确处理身份验证部分的方法。基本上,我的后端返回给我一个令牌,我用这个令牌调用 auth().signInWithCustomToken(token)。一切正常,我的用户可以访问聊天和其他内容。此外,在注销时,我调用 auth.signout()。但问题是,如果用户有一段时间没有使用该应用程序,并且当使用刷新令牌进入该应用程序时,如果它是有效的,我们会生成新的 accessToken。但是如何处理此流程中的 firebase 部分,因为用户无法访问聊天等,因为似乎 firebase 令牌不再有效。知道在这种情况下如何处理刷新令牌或流程吗?

【问题讨论】:

  • 你有没有让这个工作 Jalson1982?在我的应用程序中,我使用仅显示活动微调器的虚假页面打开应用程序。虽然这是旋转令牌并检查有效时间。如果过期,则使用刷新令牌请求新令牌,如果不成功,则请求新令牌。但是,即使使用新令牌,用户也无法使用 Firebase 数据库,因为他们没有登录。所以我想这和你遇到的问题一样吗?

标签: firebase firebase-authentication react-native-firebase


【解决方案1】:

使用signout() 注销后,刷新令牌将毫无帮助。用户已完全退出。如果您想重新登录,则需要另一个新令牌才能使用 signInWithCustomToken() 登录。用户登录后,Firebase SDK 将自动刷新令牌,以在需要时保持登录状态。您无需为此做任何事情。

【讨论】:

  • 你好。谢谢,道格。我们遇到了一个奇怪的问题。我们的 react native 应用程序中有第 5 版的 firebase,然后我们将其更新到第 9 版。一切都很好。但是一些在更新后一个月或类似时间没有使用该应用程序的用户无法使用某些资源,因为 Firebase 令牌肯定是不正常的。大多数用户都还好,但我们不明白当用户回到应用程序时我们需要处理任何事情,我们根据刷新令牌生成新的访问令牌,但似乎 firebase 令牌不再有效,用户无法访问聊天等
猜你喜欢
  • 2020-05-29
  • 1970-01-01
  • 2014-04-15
  • 2021-05-10
  • 2021-12-17
  • 1970-01-01
  • 2017-06-02
  • 2021-07-11
  • 1970-01-01
相关资源
最近更新 更多