我正试图在我的应用程序中显示上传到firebase存储的图像,为此我想将url保存到firebase数据库。
这就是我上传到firebase的方式:
let storageRef = FIRStorage.storage().reference()
let imagesRef = storageRef.child("images/pato.png")
let data = UIImagePNGRepresentation(imageSelectorImage.image!)
let uploadTask = imagesRef.putData(data!, metadata: nil, completion: { (metadata, error) in
if(error != nil) {
print("Upload error")
} else {
let downloadURL = metadata!.downloadURL()
print("\(downloadURL)")
}
})
在下载网址中,我得到了这样的信息https://firebasestorage.googleapis.com/v0/b/mytestapp-5a7f.appspot.com/o/images%2Fpato.png?alt=media&token=7b080333-8671-4bc2-994f-2cc9a9b76178
我进行了测试,并成功地在我的应用程序中显示了这个来自url的图像,我的问题是关于url中的这个令牌,这将永远持续下去吗?(因为如果我尝试在没有令牌A的情况下访问图像,就什么也得不到。)
这是保存在firebase数据库中的正确url吗?
提前谢谢你的帮助。
最佳答案
下载url中的令牌只是随机生成的字符串,使url不可访问。它不会过期,也不会绑定到任何特定的用户帐户。
出于这个原因,firebase文档并没有将重点放在令牌上。相反,它说下载url是一个公共但不可访问的url。
关于swift - 使用Swift将其上传到Firebase 3.0后如何正确获取图像URL,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38775208/