如何从 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 }