21

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

4

5 回答 5

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 时,Flash 上传会停止。如果响应是重定向,则会导致 I/O 错误。)

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

  • unique_names可以是 True 或 False,两者都有效。
于 2011-01-09T13:57:18.137 回答
5

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

这是最新的文章:上传到 Amazon S3

于 2011-02-14T12:47:42.510 回答
2

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

于 2014-07-11T20:34:48.820 回答
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

于 2011-05-27T16:09:02.450 回答
1

我想注意,不要忘记将 crossdomain.xml 上传到您的 s3 主机,如果您有 success_action_redirect url,则该域上也需要有 crossdomain.xml 文件。我花了 1 天时间解决这个问题,终于找到了问题所在。所以下次想想flash是如何在里面工作的。

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

于 2012-03-14T16:57:06.877 回答