将一个大字符串 POST 到 Heroku
我需要使用 javascript 从客户端将一个大字符串(> 2mb)发布到我的 heroku 应用程序。
然后我需要将字符串存储在 cloudfiles 或 s3 中。
考虑到 Heroku 的局限性,最好的方法是什么?
I need to POST a big string (>2mb) to my heroku app from the client using javascript.
Then I need to store the string in cloudfiles or s3.
What is the best way to do this, taking into account the limitations of Heroku?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
处理大文件和 heroku 的最佳方法是使用 javascript 将其直接发布到 s3 (或您的最终目的地),然后使用回调将其连接到您的模型。
主要原因是这样的——heroku将在任何超过30秒的请求上超时,所以如果你上传的时间超过30秒,那么你必须绕过heroku(注意:我从经验中学到了这一点
)根据您的要求,有很多选项可以实现此目的:
注意:这些都不是超级简单的设置
我希望有一个更简单的替代方案,令我惊讶的是像文件上传这样基本的东西这有困难吗?
The best way to deal with large file and heroku is to use javascript to post it directly to s3 (or your final destination), then use a callback to hook it up to your model.
The main reason is this -- heroku will timeout on any request taking longer than 30s, so if there is any risk that you uploading will take more than that, then you HAVE to bypass heroku (note: I have learned this from experience)
There a bunch of options to accomplish this depending on what you requirements are:
Note: none of these are super simple to setup
I wish that there was a simpler alternative, it is amazing to me that something as fundamental as file uploading is this difficult.
Heroku 关于 S3 的部分对如何使用回形针 gem 来管理这些问题提供了很好的建议 - 请参阅 http:// devcenter.heroku.com/articles/s3
Heroku's section on S3 has good advice about how to use the paperclip gem to manage these issues -- see http://devcenter.heroku.com/articles/s3