将数据从URL导入Amazon S3

时间:2014-02-13 14:49:56

标签: amazon-web-services amazon-s3

我有一个带有预签名网址的文件。 我想将该文件直接上传到我的S3存储桶而不先下载(我知道如何使用中间步骤但我想阻止它)。

有什么建议吗? 提前致谢

1 个答案:

答案 0 :(得分:6)

S3不支持任何方法来完成您要执行的操作。

S3不支持一种请求类型,实际上,“转到此URL以及从那里获取的任何内容,将其保存到我的存储桶中的以下密钥下。”

这里唯一的选择是获取您想要的内容,然后上传它。如果对象很大,并且您不想专用必要的磁盘空间,则可以从原点获取部分内容并使用分段上传将其部分上传...或者如果您尝试在某处保存带宽,甚至位于与S3存储区相同的区域中的非常小的t1.micro实例可能会为您提供非常可接受的执行提取和上传操作的性能。


唯一的例外是将对象从S3复制到S3,对象的大小不超过5 GB。在这种情况下,您向目标存储桶发送PUT请求,并附带:

x-amz-copy-source: /source_bucket/source_object_key

这不是一个“URL”,我认为你并不是指在你拥有两个桶的情况下从一个桶到另一个桶的复制,或者你会更直接地问这个......但这是S3唯一具有的类似于你正在寻找的行为。

http://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectCOPY.html

您无法在此处使用签名网址...您用于发送PUT请求的凭据必须拥有获取和存储权限。

相关问题