Ios 在swift中注册时如何根据该电话号码检索uid

Ios 在swift中注册时如何根据该电话号码检索uid,ios,json,swift,uid,Ios,Json,Swift,Uid,我已经注册了成功注册应用程序的按钮和按钮。 在registerButton点击中,我向该注册电话号码发送otp。在otpButton中进行otp验证后,此人成功注册,我将获得uid 现在我想检查用户在注册时是否已经注册。。为此,我在otpButton中保存了uid。。在registerButton中检索uid以检查uid是否为零,然后显示警报消息。。。但这里一直包括新用户我最近也收到注册人uid为什么 如何检查用户是否已使用其电话号码注册 在otpButton中保存uid: do{ let js

我已经注册了成功注册应用程序的按钮和按钮。 在registerButton点击中,我向该注册电话号码发送otp。在otpButton中进行otp验证后,此人成功注册,我将获得
uid

现在我想检查用户在注册时是否已经注册。。为此,我在otpButton中保存了uid。。在registerButton中检索uid以检查uid是否为零,然后显示警报消息。。。但这里一直包括新用户我最近也收到注册人uid为什么

如何检查用户是否已使用其电话号码注册

在otpButton中保存uid:

do{
let json = try JSONSerialization.jsonObject(with: data, options: .mutableContainers) as! [String: Any]
print("the json of otppppppppp \(json)")
DispatchQueue.main.async {
    if (self.otpTextField.text == String(self.otpField ?? 12)){
        print("registration successfullllll...")
        let mobileNum = json["mobile_number"] as! [String : Any]
        self.regUid = mobileNum["id"] as? String
        print("otp uid \(String(describing: self.regUid))")

        DispatchQueue.main.async {
            KeychainWrapper.standard.set(self.regUid!, forKey: "regUid")
        }
        print("the otp uid keywrap \(KeychainWrapper.standard.set(self.regUid!, forKey: "regUid"))")

        let loginVC = self.storyboard?.instantiateViewController(withIdentifier: "LoginViewController") as! LoginViewController
        self.present(loginVC, animated: true)
    }
}
}
检索uid以检查用户是否已注册

do{
let userId: String? = KeychainWrapper.standard.string(forKey: "regUid")
print("reg userid \(userId)")
if userId != nil{
    DispatchQueue.main.async {
        AlertFun.ShowAlert(title: "Title", message: "user exist", in: self)
    }
}
else{
    let json = try JSONSerialization.jsonObject(with: data, options: .mutableContainers) as! [String: Any]
    print("the json regggggggggggis \(json)")
    let phNum = json["mobile_number"] as? Int
    let status = json["status"] as? String
    self.otpField = json["otp"] as? Int
}
}

根据uid注册时,请帮助我检查用户是否存在。

使用手机号码而不是regUid作为密钥链密钥

do{
let json = try JSONSerialization.jsonObject(with: data, options: .mutableContainers) as! [String: Any]
print("the json of otppppppppp \(json)")
DispatchQueue.main.async {
    if (self.otpTextField.text == String(self.otpField ?? 12)){
        print("registration successfullllll...")
        let mobileNum = json["mobile_number"] as! [String : Any]
        self.regUid = mobileNum["id"] as? String
        print("otp uid \(String(describing: self.regUid))")

        DispatchQueue.main.async {
            KeychainWrapper.standard.set(self.regUid!, forKey: mobileNum)
        }
        print("the otp uid keywrap \(KeychainWrapper.standard.set(self.regUid!, forKey: mobileNum))")

        let loginVC = self.storyboard?.instantiateViewController(withIdentifier: "LoginViewController") as! LoginViewController
        self.present(loginVC, animated: true)
    }
}
}

let mobileNumber = ""  // set mobile number
do{
let userId: String? = KeychainWrapper.standard.string(forKey: mobileNumber)
print("reg userid \(userId)")
if userId != nil{
    DispatchQueue.main.async {
        AlertFun.ShowAlert(title: "Title", message: "user exist", in: self)
    }
}
else{
    let json = try JSONSerialization.jsonObject(with: data, options: .mutableContainers) as! [String: Any]
    print("the json regggggggggggis \(json)")
    let phNum = json["mobile_number"] as? Int
    let status = json["status"] as? String
    self.otpField = json["otp"] as? Int
}
}

感谢您的回答,我如何检查用户是否存在或notlet mobileNumber=”“//设置手机号码。。。我应该在这里设置什么。。。我想检查uid是否存在,然后用户是否存在条件。。。请帮帮我,我被困在这里很久了time@iosSwift使用mobileNum作为键。如果用户已经使用相同的手机号码登录,则您将获得用户ID,否则为零。不,我不想知道用户是否登录,。。。。我想知道,如果用户已经向phnum注册,或者他是一个新用户,这意味着首次使用该phnum进行注册mobilenum是一个distionary<代码>self.regUid=mobileNum[“id”]as?字符串我在这里获取id