如何在mongodb中存储文件/图像的url?

Posted

技术标签:

【中文标题】如何在mongodb中存储文件/图像的url?【英文标题】:How to store urls of files/images in mongodb? 【发布时间】:2017-09-05 12:13:10 【问题描述】:

我正在使用 aws s3 来存储文件。有两个选项可以将这些文件的 url 存储在 mongodb 中。

    存储图片的完整网址,例如:“https://aws.s3/path/key” 只在 mongodb 中存储密钥,并在每次获取文档时计算(使用聚合投影或 mongoose virtuals)完整路径

我只想知道哪个更好,为什么?

【问题讨论】:

没有“更好”,只有“不同”。 (为自己)记下每种方法的优缺点,然后决定您更关心哪个方面。您想存储更少的字节但使用更多的 CPU 周期吗?您是否希望所有查询都变得笨拙?我们无法为您解答。 以后我可以将文件从 aws 移动到谷歌云吗? 【参考方案1】:

我建议只将密钥存储在数据库中。这是因为,随着时间的推移,您的应用程序将不断发展并需要此类操作

将存储桶映射到域名 复制到不同的存储桶 修改存储桶名称 通过 AWS CloudFront 等代理和缓存存储桶内容。

如果存储完整的 http url,则需要在 mongodb 中更改文件数据记录。

【讨论】:

以上是关于如何在mongodb中存储文件/图像的url?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Django 中从 MongoDB 提供图像文件

如何将图像存储在文件服务器中并获取远程 URL 以响应本机应用程序

如何从 URL 下载图像并将其动态存储在我的应用程序的可绘制文件夹中?

如何使用上传的图像 url 注入输入字段以及如何将带有表单的 url 提交到 mongodb?

如何从 url 视频中获取图像(存储在 s3 存储桶中)

如何从 Firebase 存储中获取调整大小的图片下载 URL