繁体   English   中英

将POST网址直接发送到S3

[英]POST url to S3 directly

给出可下载文件的网址,例如:

http://zannee-docs.s3.amazonaws.com/rockefeller-summary.pdf

有没有一种方法可以直接将此POST / PUT发送到S3? 还是我有必要这样做:

# download the file
requests.get(url, stream=True)

# save the file locally

# upload the local file to S3
s3.upload_file()

如果有一种方法可以直接将其上传到S3(而不必下载并将其重新上传到S3),我该怎么做?

是的,但只有当源URL也托管在S3和S3的按键可以访问它。 (文档中没有明确说明这一点,但我认为源对象也需要存储在同一区域中。)

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

由于您使用的是boto,因此需要的特定API是boto.s3.key.Key.copy()

可以使用预签名的URL将对象直接放置到S3。 我不认为您可以将它与POST一起使用,因为POST必须对请求的主体进行编码,但是也许也可以做到这一点。 这个SO线程应该有用:

如何使用Boto库生成临时URL以将文件上传到Amazon S3?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM