我正在尝试集成删除帐户功能,但遇到了错误。我相信我已经找到了问题的解决方案,但我正在寻找替代解决方案的意见,因为我的不安全。
这是我的删除帐户功能
func deleteAccount()
{
let user = FIRAuth.auth()?.currentUser
let uid = user!.uid
self.dismissViewControllerAnimated(true, completion: nil)
user?.deleteWithCompletion({ (error) in
if error != nil
{
//error occurred during deletion
print(error)
}
else
{
print("Account deleted")
//account deleted, remove the user data and segue back
let removedRef = FIRDatabase.database().referenceFromURL("https://myURL.com/users/\(uid)")
//set nil to that value to delete it
removedRef.setValue(nil)
}
})
}
我得到的错误是removeValue失败:permission_denied。我假设这是因为我在删除相关用户信息之前删除了我的用户。但是,如果我要将删除代码移到闭包块之外,如果发生错误,则无论如何都会删除所有用户的信息。
我希望改进这种删除方法。