2017-04-07 59 views
1

是否可以检查身份验证令牌是否无效?Firebase身份验证令牌,检查是否有效

FIRAuthErrorCode.errorCodeInvalidUserToken

这显示为可能的错误,但我无法弄清楚如何访问日志或像下面重置密码时,除了这个错误。

FIRAuth.auth()?.sendPasswordReset(withEmail: email, completion: { (error) in 
if let err = error as? NSError { 
    if let errorCode = FIRAuthErrorCode(rawValue: err.code){ 
     if errorCode == FIRAuthErrorCode.errorCodeInvalidUserToken{ 
      self.alertFunc(title: "Error", message: "invalid token") 
     } 
    } 
} else{ 
    self.alertFunc(title: "Success", message: "Password reset email has been sent") 
} 

如果用户登录到同一帐户几台设备,并在一个重设密码,那么其他人将无法张贴到火力,由于其无效令牌。我需要其他设备上的应用程序能够识别无效令牌,然后提示用户输入用户名和密码。

任何帮助或链接,将不胜感激,谢谢!

回答

0
FIRAuth.auth()?.currentUser?.getTokenWithCompletion({ (string, err) in 
    if err != nil{ 
     if let err = err as NSError?{ 
      if let error = FIRAuthErrorCode(rawValue: err.code){ 
       switch error{ 
       case .errorCodeInvalidCredential: self.delegate.invalidToken() 
       case .errorCodeInvalidUserToken: self.delegate.invalidToken() 
       case .errorCodeUserTokenExpired: self.delegate.invalidToken() 
       case .errorCodeInvalidCustomToken: self.delegate.invalidToken() 
       case .errorCodeCustomTokenMismatch: self.delegate.invalidToken() 
       default: print("call default error") 
       } 
      } 
     } 
    } 
}) 
相关问题