我正在使用谷歌的新firebase开发应用程序.
我在更新用户电子邮件和密码时遇到问题.
我在更新用户电子邮件和密码时遇到问题.
这是我尝试过的.
let currentUser = FIRAuth.auth()?.currentUser currentUser?.updateEmail(email) { error in if let error = error { print(error) } else { // Email updated. currentUser?.updatePassword(password) { error in if let error = error { } else { // Password updated. print("success") } } } }
“Domain=FIRAuthErrorDomain Code=17014 “This operation is sensitive and requires recent authentication…”
我尝试使用此代码从firebase重新配置.
let user = FIRAuth.auth()?.currentUser var credential: FIRAuthCredential // Prompt the user to re-provide their sign-in credentials user?.reauthenticateWithCredential(credential) { error in if let error = error { // An error happened. } else { // User re-authenticated. } }
但这会发生错误
Variable ‘credential’ used before being initialed
我知道这是因为我没有初始化’凭证’变量,但我不知道如何解决这个问题.
有谁知道解决方案?
在您的编辑中,您没有初始化您的FIRAuthCredential …它应该是var credential = FIRAuthCredential()或者只是像下面的代码一样使用它
let credential = FIREmailPasswordAuthProvider.credentialWithEmail(email,password: password) user?.reauthenticateWithCredential(credential) { error in if let error = error { // An error happened. } else { // User re-authenticated. } }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。