Firebase 检查用户是否已经存在
Firebase Check if user already exists
我尝试了 运行 以下方法,但它不起作用。如果用户已经使用了电子邮件,我检查 Firebase 服务器有什么错?
FIRAuth.auth()!.createUser(withEmail: self.userEmailTextField.text!, password: self.userPasswordTextField.text!) {(createUser, error) in
if error != nil {
FIRAuth.auth()!.signIn(withEmail: self.userEmailTextField.text!, password: self.userPasswordTextField.text!)
//Display logged in
let viewController = self.storyboard!.instantiateViewController(withIdentifier: "TabBarController") as UIViewController
self.present(viewController, animated: true, completion: nil)
}else {
//Display an alert message
self.displayMyAlertMessage(userMessage: "Email already in use. Please see the login page.")
return
}
}
Firebase 已经为您完成了这项工作。擦除登录方法,仅 运行 使用已存在的电子邮件创建用户方法,将返回 FIRAuthErrorCodeEmailAlreadyInUse
。查看 this 了解更多信息
请参考以下代码。
代码:
FIRAuth.auth()?.createUser(withEmail: email, password: password) {
(user, error) in
if (error) {
// Email is already in use.
} else {
// Create new user successfully
}
}
我尝试了 运行 以下方法,但它不起作用。如果用户已经使用了电子邮件,我检查 Firebase 服务器有什么错?
FIRAuth.auth()!.createUser(withEmail: self.userEmailTextField.text!, password: self.userPasswordTextField.text!) {(createUser, error) in
if error != nil {
FIRAuth.auth()!.signIn(withEmail: self.userEmailTextField.text!, password: self.userPasswordTextField.text!)
//Display logged in
let viewController = self.storyboard!.instantiateViewController(withIdentifier: "TabBarController") as UIViewController
self.present(viewController, animated: true, completion: nil)
}else {
//Display an alert message
self.displayMyAlertMessage(userMessage: "Email already in use. Please see the login page.")
return
}
}
Firebase 已经为您完成了这项工作。擦除登录方法,仅 运行 使用已存在的电子邮件创建用户方法,将返回 FIRAuthErrorCodeEmailAlreadyInUse
。查看 this 了解更多信息
请参考以下代码。
代码:
FIRAuth.auth()?.createUser(withEmail: email, password: password) {
(user, error) in
if (error) {
// Email is already in use.
} else {
// Create new user successfully
}
}