NodeJS文件上传到Amazon S3 Store映射到数据库

时间:2013-09-04 06:38:15

标签: node.js express amazon-s3 knox-amazon-s3-client

我在看Knox S3 library。在我的网络应用程序中,允许用户上传文件。我想使用亚马逊S3。

在Knox中,如何映射上传到用户的文件?假设我想知道用户上传的文件。这将存储在MongoDB中。

只是一个想法。

1 个答案:

答案 0 :(得分:2)

要确定特定用户上传的数据,您有两种选择:

  1. 使用外部数据存储(MongoDB或任何其他数据库)并记录S3(它的密钥)上的上传对象与用户之间的关系。当新对象上传到S3时,您的应用程序逻辑将完成此数据记录。

  2. 在公共前缀下上传S3上的数据(例如,用户上传的所有文件都将放在/<user-id>/file.ext中)并在存储桶上执行LIST请求以查找所有密钥在那个前缀下。

  3. 通常第一个选项效果最好,特别是如果您需要记录S3对象和其他实体之间的多个关系。

    这些方案并非特定于将Knox用作S3客户端。它们独立于编程语言或S3库使用。

相关问题