如何从 firebase 身份验证中获取用户 ID
How to get the user id from the firebase authentication
我正在使用 phone 号码验证器来验证我的用户。我已经使用以下代码验证了它们。
PhoneAuthProvider.provider().verifyPhoneNumber(mobileNo!, uiDelegate: nil) { (verificationID, error) in
if error != nil {
self.errorLabel.text = error?.localizedDescription
}else{
log.success("\(mobileNo!)")/
// add authentication code to the defaults
let defaults = UserDefaults.standard
defaults.set(verificationID, forKey: "authVID")
self.performSegue(withIdentifier: "sendCode", sender: Any?.self)
}
}
使用以下代码验证代码
func verifyCode(){
let defaults = UserDefaults.standard
let credential: PhoneAuthCredential = PhoneAuthProvider.provider().credential(withVerificationID: defaults.string(forKey: "authVID")!, verificationCode: verficationCodeTextField.text!)
Auth.auth().signIn(with: credential) { (user, error) in
if error != nil {
self.errorLabel.text = error?.localizedDescription
self.errorLabel.alpha = 1
}else{
self.transitionToRegistration()
}
}
}
现在我需要从身份验证中获取用户 ID 吗?
这可以通过使用以下代码行来完成。
guard let userID = Auth.auth().currentUser?.uid else { return }
我正在使用 phone 号码验证器来验证我的用户。我已经使用以下代码验证了它们。
PhoneAuthProvider.provider().verifyPhoneNumber(mobileNo!, uiDelegate: nil) { (verificationID, error) in
if error != nil {
self.errorLabel.text = error?.localizedDescription
}else{
log.success("\(mobileNo!)")/
// add authentication code to the defaults
let defaults = UserDefaults.standard
defaults.set(verificationID, forKey: "authVID")
self.performSegue(withIdentifier: "sendCode", sender: Any?.self)
}
}
使用以下代码验证代码
func verifyCode(){
let defaults = UserDefaults.standard
let credential: PhoneAuthCredential = PhoneAuthProvider.provider().credential(withVerificationID: defaults.string(forKey: "authVID")!, verificationCode: verficationCodeTextField.text!)
Auth.auth().signIn(with: credential) { (user, error) in
if error != nil {
self.errorLabel.text = error?.localizedDescription
self.errorLabel.alpha = 1
}else{
self.transitionToRegistration()
}
}
}
现在我需要从身份验证中获取用户 ID 吗?
这可以通过使用以下代码行来完成。
guard let userID = Auth.auth().currentUser?.uid else { return }