我正在Rails中构建一个API,其中一个调用将获得一个包含静态HTML站点的zip文件,将其上传到S3,然后返回公共URL。
最好的方法是什么?我正在考虑在Heroku的tmp目录中解压缩该文件,并使用s3_uploader在S3上传其所有内容。
是否值得使用Carrierwave?
答案 0 :(得分:3)
没有人回答,所以我会很快解释我是如何处理这个问题的。
我正在使用Carrierwave将zip文件上传到S3,我正在使用delayed_job gem异步调用unzip方法。这在Heroku's dev center page上得到了很好的解释。
解压缩方法在Heroku的tmp文件夹中下载并解压缩S3 zip文件,然后使用s3_uploader gem将其上传回S3。这非常好用,我唯一需要解决的是在模型实体被删除时删除解压缩的文件夹。