Firebase检索用户ID为

时间:2016-05-25 17:45:30

标签: ios swift firebase firebase-authentication

我目前有这个功能来检索当前用户图像图像网址,但我想要使用用户ID而不是currentUser如何做到这一点。一切都适用于代码,但我只是希望能够在其他用户上使用该功能

func ProfileImage(imageUIView:UIImageView,borderColor:UIColor,borderWidth:CGFloat,backgroundColor:UIColor,noimageLabel:UILabel){



    if let user = FIRAuth.auth()?.currentUser{

        if user.photoURL == ""{
                print("database image is not set")

            imageUIView.layer.borderWidth = borderWidth
            imageUIView.layer.masksToBounds = false
            imageUIView.layer.borderColor = borderColor.CGColor
            imageUIView.layer.cornerRadius = imageUIView.frame.height/2
            imageUIView.clipsToBounds = true
            imageUIView.backgroundColor = backgroundColor
            noimageLabel.hidden = false


        }else{

            imageUIView.layer.borderWidth = borderWidth
            imageUIView.layer.masksToBounds = false
            imageUIView.layer.borderColor = borderColor.CGColor
            imageUIView.layer.cornerRadius = imageUIView.frame.height/2
            imageUIView.clipsToBounds = true
            imageUIView.backgroundColor = backgroundColor
            noimageLabel.hidden = true

            var imageUrl = NSData(contentsOfURL: user.photoURL!)

            imageUIView.image = UIImage(data: imageUrl!)

        }

    }




}

1 个答案:

答案 0 :(得分:2)

有关Firebase数据结构的详细信息,无需提供完整的答案,但我可以指导您走正确的道路。

只要您的用户存储了唯一标识符作为其键,您就可以使用此引用来检索其个人资料图片的网址。

var userRef = FIRDatabase.database().reference().child(<url to user ids> + "\(unique user id)") // this creates a FIRDatabase ref to the specified user id
userRef.observeSingleEventOfType(.Value, :withBlock: { (snapshot)
   // perform desired functionallity with the image URL from the specified user
})

希望这有帮助!