使用Heroku上的Rails解压缩文件并将其所有内容上传到S3

时间:2015-06-02 16:45:05

标签: ruby-on-rails ruby heroku amazon-s3

我正在Rails中构建一个API,其中一个调用将获得一个包含静态HTML站点的zip文件,将其上传到S3,然后返回公共URL。

最好的方法是什么?我正在考虑在Heroku的tmp目录中解压缩该文件,并使用s3_uploader在S3上传其所有内容。

是否值得使用Carrierwave

1 个答案:

答案 0 :(得分:3)

没有人回答,所以我会很快解释我是如何处理这个问题的。

我正在使用Carrierwave将zip文件上传到S3,我正在使用delayed_job gem异步调用unzip方法。这在Heroku's dev center page上得到了很好的解释。

解压缩方法在Heroku的tmp文件夹中下载并解压缩S3 zip文件,然后使用s3_uploader gem将其上传回S3。这非常好用,我唯一需要解决的是在模型实体被删除时删除解压缩的文件夹。