FireBase存储中存储的ImageURL未存储在FireBase数据库中

时间:2019-07-08 15:22:20

标签: ios swift

现在我正在尝试使用Firebase设置signUpEvent。

在此应用中,可以注册图像。而我正在将Firebase的图像用于另一个mainviewclass。

但是存储在Firebase存储中的imageUrl不会存储到Firebase数据库中。

我应该怎么做才能解决这个问题?

这是有关注册的源代码。


@objc func signupEvent(){

        Auth.auth().createUser(withEmail: Email.text!, password: Password.text!) { (user, err) in

            let uid = user?.user.uid

            let image = self.imageView.image!.jpegData(compressionQuality: 0.1)


            Storage.storage().reference().child("userImages").child(uid!).putData(image!, metadata: nil, completion: { (data, error) in



//this is problem

                let imageUrl = 
data?.storageReference?.downloadURL(completion: { (url, err) in



                let urlText = url?.absoluteString
                let values = ["userName":self.name.text!,"profileImageUrl":urlText!, "uid":Auth.auth().currentUser!.uid as Any]

                    Database.database().reference().child("users").child(uid!).setValue(values, withCompletionBlock: { (err, ref) in
                        if(err==nil){
                            self.cancelEvent()
                        }
                    })
                })
            })
Database.database().reference().child(uid!).setValue(["name":self.name.text!])
        }

1 个答案:

答案 0 :(得分:0)

Storage.storage().reference().child("userImages").child(uid!).downloadURL(completion: { (url, error) in
                //asing the url to your user in DB.
            })