2014-12-01 121 views
1

我需要将用户上传的文件存储在Amazon S3中。我是S3的新手,但是从文档中获得,S3需要我在PUT方法中指定文件上传路径。S3 - 自动生成文件夹结构?

我想知道是否有一种方法发送文件到S3,并且只需获取http访问的链接?我希望亚马逊能够处理与文件/文件夹结构本身有关的所有问题。例如,我只是从node.js文件管道到S3,并在回调中,我得到没有到期日期的http链接。而亚马逊本身也创造了像/2014/12/01/.../$hash.jpg这样的不伦不类,只是给我最后的链接?这种用例看起来很常见。

可能吗?如果不是,您能否提出任何选项来简化S3中的文件存储/文件系统树结构?

非常感谢。

回答

1

S3确实没有文件夹。在一个普通的文件系统中,2014/12/01/blah.jpg意味着你有一个2014文件夹,里面有一个名为12的文件夹等,但在S3中整个2014/12/01/blah.jpg它是关键 - 实质上是一个长文件名。您不必创建任何文件夹。

+0

嗯,实际上我有'创建文件夹'选项,并且可以创建子文件夹http://imageshack.com/a/img538/9779/H97CCN.png – f1nn 2014-12-01 16:00:21

+0

@ f1nn是的,控制台和一些S3客户端(如Transmit)使用斜杠表示类似文件夹的结构,使事情变得更容易。但是,如果你看看API,你会明白这是一个便于使用的门面。 – ceejayoz 2014-12-01 16:13:45

+0

哦,我明白了。如果我没有办法影响** real ** Amazon fs,那么这是否意味着我可以将所有文件都放到S3“in root”中,并且文件的唯一要求是对此存储桶文件名具有唯一性? – f1nn 2014-12-01 16:44:19