问题 Firebase和Swift:如何使用另一个数据库存储更大的文件?


我目前正在尝试使用Firebase构建一个聊天应用程序,同时使用Firebase进行实时消息传递。我唯一的问题是我希望用户发送图像,我希望他们拥有带图像的配置文件,但我知道Firebase的存储空间有限(或者至少每个支付层的存储空间对于您获得的连接数量来说很低)

所以我想知道如何连接另一个数据库并在两者之间需要时进行调用。因此,当消息和图像发送时,而不是存储图像的Firebase,它会将URL存储到另一个数据库中的图像。

我认为像AWS S3这样的东西是我最好的选择。任何帮助表示赞赏!


7984
2018-02-24 14:33


起源



答案:


之前已经问过这个问题,并且有很多解决方案。这是一种“意见”类型的问题,但这里有一些选择。

在Firebase中查看和存储图像

Firebase的容量为10Mb,适用于许多图像。但是,如果您需要更大,它们可以很容易地编码为base64并分成块。

如果你想去外部:

s3或 Filepicker (Filestack)以及Google提供了一些选项。

不确定总体要求,但显然你可以深入了解CloudKit / CoreData,甚至Dropbox也提供API。

我没有经验  但它也可能是一种选择。

每个选项都有自己的API。

通常,您会将firebase节点中的链接存储到相关图像/对象中。然而,由于与CloudKit / CoreData的接口将与Filepicker不同,因此其机制变化很大。

使用CoreData,您将不得不推出自己的参考方案,而Filepicker则可以直接引用该文件。

其中许多服务都提供免费或低成本的试用版,您可以用几分钟的时间来编写一些代码来测试功能,看它是否符合您的要求。

如果您需要帮助编码/解码,请参阅此问题的答案

Swift2从Firebase检索图像

一旦你开始滚动,如果你有问题在另一个问题中发布一些代码。


9
2018-02-28 14:30