gpt4 book ai didi

ios - 如何在 Swift 中使用 Firebase 验证用户电子邮件和密码

转载 作者:行者123 更新时间:2023-11-28 12:30:11 27 4
gpt4 key购买 nike

我是 Swift 和 Firebase 的新手。我正在开发一个 IOS 应用程序。对于这个应用程序,我需要验证用户电子邮件和密码。我有一个包含用户详细信息的 Json 文件。请帮助我如何验证用户电子邮件和密码?我已经阅读了 Stackoverflow 中的几篇文章,但我被卡住了。以下是我的 Json 和 swift 代码。

Json文件:

{
"ID": 123,
"Membership": 1234,
"title": "Mr.",
"firstname": "kumar",
"lastname": "sandeep",
"email": "sandeepcs2005@gmail.com",
"membrshipstatus": "Active",
"volunteer": "Yes",
"creationDate": "2016-12-27 "
},

这是我的快速代码:

import UIKit
import Firebase
import FirebaseAuth



class ViewController: UIViewController {

@IBOutlet weak var emailofUser: UITextField!
@IBOutlet weak var passwordofUser: UITextField!
var ref:FIRDatabaseReference! //created a variable ref of type firebase database reference
var databaseHandle:FIRDatabaseHandle? //to handle to database listener like to stop or start it



var postdata = [String]?()
var postall = [[String:String]]()



override func viewDidLoad() {
super.viewDidLoad()



//set firebase reference
ref = FIRDatabase.database().reference()

let userRef = ref.child("Hub")
//let queryRef = userRef.queryOrderedByChild("email").queryEqualToValue("mr.stefankirsch@gmx.com")


// Consider adding ".indexOn": "email" at /hubeindhoven-95f09 to your security rules for better performance


userRef.queryOrderedByChild("email").queryEqualToValue("mr.sandeep@gmail.com").observeEventType(.Value, withBlock: { snapshot in

for child in snapshot.children {

let snap = child as! FIRDataSnapshot

let userDict = snap.value as! [String:Any]

let userId = userDict["ID"]
let lastname = userDict["lastname"]
print("\(userId!) \(lastname!)")


}
})

最佳答案

我认为您发布的 firebase json 是错误的,您是否按照标准方式添加用户(在 firebase 网络界面中)。每个用户没有唯一的 ID。例如,我添加了我的一个..

{
"users" : {
“UOLTzymgIyeGgNBSS0UgUs95od21” : {
"email" : "aaaaa@gmail.com",
"firstName" : "aaaaa",
"lastName" : “bbbb”,
"mobileNo" : 12122121
},
“CveQ13sLmMO93yHZEAP24xHA3VZ1” : {
"email" : "bbbb@gmail.com",
"firstName" : “bbbb”,
"lastName" : “bbbbb”,
"mobileNo" : 11223333
}
}
}

我已经添加了登录代码,这对我有用,希望这能解决您的问题

    override func viewDidLoad() {
super.viewDidLoad()

FIRAuth.auth()!.addStateDidChangeListener() { auth, user in
if user != nil {
self.performSegueWithIdentifier("UserDetails", sender: self)
}
}
}

@IBAction func LoginPage(sender: UIButton) {
FIRAuth.auth()!.signIn(withEmail: textFieldLoginEmail.text!,
password: textFieldLoginPassword.text!)
}

关于ios - 如何在 Swift 中使用 Firebase 验证用户电子邮件和密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42251253/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com