Amazon s3:如何在每个新用户名后命名新文件夹?

Amazon s3: How can I name a new folder after each new username?

我正在创建一个简单的 Instagram 类型的社交媒体应用程序,专门用于使用 javascript 和 node.js 共享图像。我将新用户信息(名称、用户名、密码)存储在 MySQL 数据库中,并将图像保存在 S3 存储桶中。

我想为每个新用户创建一个新文件夹,并以用户名命名文件夹。有人对我如何去做有任何建议吗?

Amazon S3 中实际上并不存在文件夹。相反,每个对象的名称 ('Key') 包含对象的 完整路径

例如,john/文件夹中的image.png实际上只是一个名为john/image.png的对象。

因此,只要有对象存储在该路径中,文件夹就会自动创建。当路径中没有对象时(删除对象后),文件夹也会自动消失。

因此,您只需将图像存储在适当的路径中,'folder' 就会自动出现。

提示: 唯一 ID 而非用户名 命名 'folders' 可能更好。这是因为用户将来可能想 更改用户名 ,如果对象以用户名命名,则这是不可能的。使用 unique id 可以避免这个问题。 (同样,您应该在数据库中使用唯一 ID table 而不是索引和加入用户名。)