【问题标题】:Service for receiving file uploads (inverse CDN)接收文件上传服务(反向CDN)
【发布时间】:2012-06-04 07:06:28
【问题描述】:

有许多服务可用于用户提供内容。我正在寻找相反的结果:接收来自用户上传的内容的服务。

具体来说,我正在构建一个网络应用程序,其中上传的文件可能从 10MB 到 100MB 不等。我预计接收这么多数据会遇到很多问题,而我正在寻找一种可以为我处理这些问题的服务。

【问题讨论】:

  • dropbox、box.net、amazon drive?
  • 是否有 API 可以轻松与 Web 应用程序集成?

标签: file-upload upload


【解决方案1】:

您可以使用 Amazon S3 接收来自用户的上传。您可以生成一个签名的 HTML 表单,让您的用户将文件上传到指定的存储桶;您可以使用政策文件控制表单的到期时间。

Amazon S3 Developer Guide: Browser-Based Uploads Using POST

Article: Browser Uploads to S3 using HTML POST Forms

截至 2016 年 4 月,他们还有一个名为 Transfer Acceleration 的新功能,在精神上更接近用于文件上传的实际“反向 CDN”。

【讨论】:

    【解决方案2】:

    Uploadcare 旨在减轻您接收、存储、处理和分发来自用户的文件和图像的痛苦。试试看,有free 计划。

    【讨论】:

      【解决方案3】:

      您实际上可以通过在您的网络应用中使用 HTML5/Flash 上传器来解决这个问题,而无需支付第三方费用。我特别推荐Plupload(免费,开源)。这是一个 javascript 库,它使用客户端前端(HTML5、Flash、Silverlight 等)的选择来处理上传文件,这种方式不会触发浏览器超时并允许用户查看他们的上传进度( demo 有 10Mb 限制)。

      除了脚本之外,您只需要服务器上的后端即可接收数据。您需要注意任何可能触发服务器端超时的事件,例如 PHP 的 MAX_FILE_SIZE 或请求超时。

      plupload 包附带了示例前端和后端脚本,因此您应该可以很快启动并运行。

      我已经使用 plupload 上传了 80Mb 的文件,所以我知道它可以工作。在典型的 DSL 连接上它会很慢,但没有任何上传服务可以避免这种情况。

      【讨论】:

        【解决方案4】:

        您似乎正在寻找类似Amazon S3Google Storage 的内容。两者都有专用的 API,您只需为使用的存储付费。它们都有各种语言的库,以使集成更容易。

        【讨论】:

          【解决方案5】:

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2017-05-18
            • 1970-01-01
            • 2011-06-07
            • 1970-01-01
            • 2017-04-02
            • 1970-01-01
            • 1970-01-01
            • 2019-05-19
            相关资源
            最近更新 更多