如何将Plupload直接上传到Amazon S3?

时间:2011-01-09 13:47:00

标签: amazon-s3 plupload

如何正确配置Plupload,以便将文件直接上传到Amazon S3

5 个答案:

答案 0 :(得分:17)

  • 除了对bucket,key和acl的限制外,策略文档还必须包含name,Filename和success_action_status的规则。例如:

        ["starts-with", "$name", ""],
        ["starts-with", "$Filename", ""],
        ["starts-with", "$success_action_status", ""],
    

    Filename是Flash后端发送的字段,但HTML5后端不会。

  • multipart设置必须为True,但这是默认设置。

  • multipart_params设置必须是包含以下字段的字典:

    • key
    • AWSAccessKeyId
    • acl = 'private'
    • policy
    • signature
    • success_action_status = '201'

    success_action_status设置为201会导致S3返回HTTP状态代码为201的XML文档。这是使Flash后端工作所必需的。 (当响应为空且代码为200或204时,闪存上载会停止。如果响应是重定向,则会导致I / O错误。)

  • S3无法理解块,因此请删除chunk_size配置选项。

  • unique_names可以是True或False,两者都有效。

答案 1 :(得分:5)

最新的Plupload版本包含说明性示例,很好地展示了如何使用Plupload将文件上传到Amazon S3,使用Flash和SilverLight运行时。

以下是新鲜的文章:Upload to Amazon S3

答案 2 :(得分:2)

官方的Plupload教程,比这里的答案更详细:https://github.com/moxiecode/plupload/wiki/Upload-to-Amazon-S3

答案 3 :(得分:1)

如果您使用的是Rails 3,请查看我的示例项目:

使用Rails 3,Flash和基于MooTools的FancyUploader直接上传到S3的示例项目:https://github.com/iwasrobbed/Rails3-S3-Uploader-FancyUploader

示例项目使用Rails 3,Flash / Silverlight / GoogleGears / BrowserPlus和基于jQuery的Plupload直接上传到S3:https://github.com/iwasrobbed/Rails3-S3-Uploader-Plupload

答案 4 :(得分:1)

我想注意,不要忘记将crossdomain.xml上传到你的s3主机,如果你有success_action_redirect url,你也需要在该域上有crossdomain.xml文件。我花了一天时间与这个问题作斗争,最后发现了什么是错的。所以下次想想闪存是如何工作的。

希望我为某人节​​省时间。