首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用电子邮件设置配置文件图片以防止防火墙用户身份验证?

如何使用电子邮件设置配置文件图片以防止防火墙用户身份验证?
EN

Stack Overflow用户
提问于 2018-03-18 04:33:28
回答 1查看 59关注 0票数 0

我正在开发一个员工管理应用程序,这就是为什么我需要保存针对员工id或电子邮件的.In防火墙数据库的配置文件图片,流程是什么,以及如何通过源代码code.In 3、xcode 8.3.2、ios 10设计数据库。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-03-19 08:28:09

您需要将配置文件映像存储在火基存储中,然后将检索imageURL。检索imageURL之后,您需要将其保存在防火墙数据库中,作为userId的子数据库。请参阅下面的代码

代码语言:javascript
复制
func handleRegister() {
    guard let email = self.emailTextField.text, let password = self.passwordTextField.text, let name = self.nameTextField.text  else {
        print("Form is not valid")
        return
    }
    Auth.auth().createUser(withEmail: email, password: password) { (user: User?, error) in
        if error != nil {
            print(error!)
            return
        }
        guard let uid = user?.uid else {
            return
        }
        //success
        let imageName = NSUUID().uuidString
        let storageRef = Storage.storage().reference().child("\(imageName).png")
        if let uploadData = UIImageJPEGRepresentation(self.profileImageView.image!, 0.1) {
            storageRef.putData(uploadData, metadata: nil, completion:
                { (metadata, error) in
                    if  error != nil {
                        print(error!)
                        return
                    }
                    print(metadata!)
                    if let progileImageURL = metadata?.downloadURL()?.absoluteString {
                        let values = ["name": name, "email": email, "profileImageUrl": progileImageURL]
                        self.registerUserIntoDatabaseWithUID(uid: uid, values: values as [String : AnyObject])
                    }
            })
        }
    }
}


func registerUserIntoDatabaseWithUID(uid: String, values: [String: AnyObject]) {
    let ref = Database.database().reference()
    let userRef = ref.child("users").child(uid)
    userRef.updateChildValues(values, withCompletionBlock: { (err, ref) in
        if err != nil {
            print(err!)
            return
        }
        print("Saved user successfully into Firebase db")
        self.messagesController1?.checkIfUseLoggedin()
        self.dismiss(animated: true, completion: nil)
    })
}

func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]) {
    var selectedImageFromPicker: UIImage?
    if let editedImage = info["UIImagePickerControllerEditedImage"] as? UIImage {
        selectedImageFromPicker = editedImage
        print(editedImage)
    }
    else if let orignalImage = info["UIImagePickerControllerOriginalImage"] as? UIImage {
        selectedImageFromPicker = orignalImage
        print(orignalImage)
    }
    if let selectedImage = selectedImageFromPicker {
        self.profileImageView.image = selectedImage
    }
   self.dismiss(animated: true, completion: nil)
}


func imagePickerControllerDidCancel(_ picker: UIImagePickerController) {
    print("picker cancled")
    self.dismiss(animated: true, completion: nil)
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49344492

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档