Firebase存储:使用下载URL代替存储参考

问题描述 投票:1回答:1

我有一个使用iOS来存储图像的Firebase Storage应用程序。上载图像后,我将其storage reference保存在我的Firebase Database中。应用加载后,会从数据库中获取各种storage references并使用FirebaseUI方法来显示其对应的图像,如下所示:

let storageRef = Storage.storage().reference(forURL: imageUrl)
imageView.sd_setImage(with: storageRef, placeholderImage: nil)

这很好,但是非常慢。

[寻找加速Firebase Storage的解决方案时,我发现这篇文章暗示使用图片的公共链接,即。其download url,而不是其storage referencehttps://stackoverflow.com/a/44362350/5225013

我的理解是,这与public urls前面有CDN,而storage references无关。

download url可以在应用中使用以下代码进行检索:

let storageRef = Storage.storage().reference(forURL: imageUrl)
storageRef.downloadURL { (downloadUrl, error) in

    if let downloadUrl = downloadUrl {
        // do something with downloadUrl
    }
}

但是,以这种方式获取它对于我的目的来说是毫无用处的,因为在显示图像之前,需要花费额外的时间进行异步调用。

我一直在想编写一个云函数来将每个图像的download url与对应的storage reference一起保存在数据库中,然后使用它在应用程序中显示图像。这些图像不是私人的,也不包含敏感内容,因此我不介意它们是否公开。我主要是想知道如果这样做我有什么需要担心的吗?这是不常见的原因吗?

我有一个使用Firebase存储存储图像的iOS应用。上载图像后,我将其存储参考保存在Firebase数据库中。应用加载时,它将获取各种存储空间...

firebase firebase-realtime-database google-cloud-storage firebase-storage firebaseui
1个回答
2
投票

您不需要“做”任何事情。

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.