2

我正在尝试使用 ruby​​ on rails 将我的文件上传到 aws s3 上。代码对于较小的上传非常有效,但对于大于 3-4mb 的上传,我会收到超时错误。我正在使用代码在 s3 上上传文件:

AWS::S3::S3Object.store(filename, params[:file].read, @BUCKET_NAME, :access => :private)

我如何解决我的问题以进行更大的上传。我可以增加 ruby​​ 脚本的超时间隔时间以允许更大的上传吗?

请帮忙...

4

3 回答 3

2

我建议利用最近的 CORS 支持。我试图清楚地详细说明如何在那里使用它:http: //pjambet.github.com/blog/direct-upload-to-s3/

于 2012-10-09T22:56:29.257 回答
0

我建议您对长请求使用http 流

于 2012-10-09T05:21:16.357 回答
0

假设您正在使用:aws-s3 gem

当您处理大文件时,您必须使用 I/O 流,以便分段读取该文件。

相反,你可能会使用这样的东西:

S3Object.store('roots.mpeg', open('roots.mpeg'), @BUCKET_NAME, :access => :private)

可以找到更多详细信息:http: //amazon.rubyforge.org/

于 2012-10-09T05:32:38.067 回答