【问题标题】:Download a list of Objects in a bucket from S3从 S3 下载存储桶中的对象列表
【发布时间】:2011-12-15 11:21:14
【问题描述】:

我在 Amazon S3 上有一个存储桶,其中包含数百个对象。 我有一个列出所有这些对象的网页,并在 html 中有一个下载对象链接。

这一切都按预期工作,我可以单独下载每个对象。

如何在每个链接旁边提供一个复选框,允许选择一组对象,然后只下载这些对象?

所以要明确一点,如果我选择项目 1、2 和 7 - 并单击下载链接 - 只有那些对象会被下载。这可能是一个 zip 文件,也可能是一次一个,虽然我不知道它是如何工作的。

我能够对此进行编码,但我正在努力解决它的工作原理 - 因此欢迎提供流程描述。虽然网络应用是 PHP,但我可以考虑使用 python 或 ruby​​。

【问题讨论】:

    标签: php javascript amazon-s3


    【解决方案1】:

    恐怕这是一个很难解决的问题。

    S3 不允许对文件进行任何“就地”操作,因此您不能将它们压缩到单个下载中。在浏览器中,您一次只能下载一个网址。当然,没有什么可以阻止用户使用下载管理器手动排队下载,但您无能为力。

    因此,您只剩下服务器端解决方案了。您需要将文件从 S3 下载到服务器并对其进行压缩,然后再将压缩文件传送到客户端。不幸的是,根据文件的数量和大小,这可能需要很长时间,因此您需要一个通知系统来让用户知道他们的文件何时准备就绪。

    此外,除非您的服务器在 EC2 上运行,否则您可能需要支付两倍的带宽费用。 S3 到您的服务器,然后您的服务器到客户端。

    【讨论】:

    • 谢谢杰夫。我也有同样的想法。它变成了一个比预期复杂得多的解决方案。
    猜你喜欢
    • 2015-09-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-07
    • 2017-11-23
    • 1970-01-01
    • 2012-01-29
    相关资源
    最近更新 更多