首页 > 解决方案 > 如何使用 mongo 和 AWS 存储文件

问题描述

我正在创建一个存储大量 pdf 文档(即教育内容)的 Web 应用程序。

我知道将 pdf 文件存储在我的数据库(即 MongoDB)中并不是一个好习惯。

因此,我计划在 AWS 上存储 pdf 文件以及与 pdf 文件相关的其他详细信息,例如我的 MongoDB 数据库中的标题、主题、视图、评级、作者等。

我对 AWS 完全陌生,我会想办法使用节点将文件上传到 AWS,但我不确定如何将文件链接到 MongoDB 中的文档(记录)。

注意:文件应该以这样的方式链接到特定记录,这样我就可以很容易地使用 URL 或类似的东西在前端检索文件,而且在打开该 URL 时不应直接访问这些文件只能使用我的网站访问。

任何额外的建议将不胜感激。

标签: node.jsmongodbamazon-web-servicesamazon-s3mongoose

解决方案


本文显示的内容与您想要实现的目标非常相似(它们使用图像而不是文档)。

使用 MongoDB(或DynamoDB,这是一项 AWS 服务)来存储您的文档元数据,并使用 S3 来存储实际文档。流程将如下所示:在此处输入图像描述

请注意,在这种情况下,开发人员使用Lambda 函数来保存元数据。您可以使用 Node.js 来实现您的 Lambda 函数。


推荐阅读