使用FirebaseUI身份验证删除用户帐户时出错。服务

时间:2020-09-12 09:54:54

标签: swift firebase firebase-authentication

我正在使用FirebaseUI进行项目,我想让用户能够删除他的帐户。我使用了Firebase文档中的以下代码:

    @IBAction func deleteTheAccountButtonHasBeenTapped(_ sender: Any) {
    
    
    let user = Auth.auth().currentUser

    user?.delete { error in
      if let error = error {
        print(error)
      } else {
        self.defaults.set(false, forKey: "isUserLoggedIn")
        let storyBoard : UIStoryboard = UIStoryboard(name: "Main", bundle:nil)
        let LoginVC = storyBoard.instantiateViewController(withIdentifier: "LoginVC") as! LoginVC
        self.present(LoginVC, animated:true, completion:nil)
      }
    }
    
}

不幸的是,我不断收到错误消息:

Error Domain = FIRAuthErrorDomain代码= 17014“此操作敏感,需要最近的身份验证。重试此请求之前,请再次登录。 UserInfo = {NSLocalizedDescription =此操作敏感,需要最近的身份验证。重试此请求之前,请再次登录。,FIRAuthErrorUserInfoNameKey = ERROR_REQUIRES_RECENT_LOGIN}

它需要重新验证当前用户,有人可以帮助我吗?

1 个答案:

答案 0 :(得分:1)

这是Firebase的功能。某些操作要求用户最近登录才能验证请求的真实性,因此您需要读取错误代码并相应地重新认证用户。您可以阅读文档here