【问题标题】:Firebase token expiredFirebase 令牌已过期
【发布时间】:2019-12-11 01:41:27
【问题描述】:
  1. 我一直在努力解决以下问题:
    用户令牌已过期,我不知道如何处理。是 令牌过期时有什么方法可以得到通知?我怎样才能 更新令牌。我一直在每次发布时更新令牌 应用程序。这是正确的方法还是我们有其他方法可以做 这个?

    FIRAuth.auth()?.addStateDidChangeListener { auth, user in   
      if user != nil {
        // User is signed in. Show home screen   
      } else {
        // No User is signed in. Show user the login screen   } 
    }
    

    即使这个块也没有捕捉到那个状态。

【问题讨论】:

  • 感谢您的评论,但事实并非如此......即使我可以使用相同的凭据登录多个应用程序......它有时会发生......就像你关闭应用程序然后打开它一天..你进入应用程序但数据不会因为你的令牌过期..我们如何在应用程序关闭时检测令牌的过期..我们需要在应用程序打开时捕获它..我只是不知道如何..
  • 您可能需要正确处理如下错误:FIRAuthErrorCodeInvalidUserToken 并让用户退出
  • 谢谢@zero3nna,我的应用程序中有firebase只是为了登录,之后我不在任何地方使用firebase,那我怎么知道令牌已过期..??

标签: ios swift firebase firebase-authentication swift4


【解决方案1】:

您可以收到 Firebase 错误并将其返回给用户,也可以将它们用作通知。这可以通过执行以下操作来实现:

首先,检查错误。然后,获取错误代码。您可以查看.userTokenExpired的错误代码。

if let error = error {
    if let errorCode = AuthErrorCode(rawValue: error._code) {
        if errorCode == .userTokenExpired {
            print("The user's token has expired.")
        }
    }
}

【讨论】:

    猜你喜欢
    • 2018-05-27
    • 2014-06-27
    • 2018-10-14
    • 2017-10-19
    • 2019-08-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多