2016-01-01 83 views
0

爲了給出一點上下文,我正在使用Rails API和Ember前端構建一個配方應用程序。爲了獲得食譜,我正在抓取某些網站並將這些信息存儲在PG數據庫中。在S3上存儲刮擦圖像的最佳方式

因爲有這麼多的圖片,我想開始儲存那些S3。在過去,我用Paperclip處理圖片上傳到S3,但由於我的Rails應用程序只是一個API,我不確定最好的方法/工具是什麼。有沒有人做過類似的事情?

回答

1

如果您的S3存儲是公開訪問(這是理想和高性能),只要使用爲你的形象,而不是通過滑軌去了S3的URL。

如果你必須要經過Rails的,因爲你要保持你的S3存儲桶的私人(這種方法更昂貴的規模),你可以在一個控制器動作檢索S3對象,併爲他們提供服務的方式。 http://api.rubyonrails.org/classes/ActionController/DataStreaming.html#method-i-send_data

粗糙例如::

def MediaController < ApplicationController 
    def s3_image 
    bucket_get_result = G_CLIENT.execute(
     api_method: G_API.objects.get, 
     parameters: {bucket: 'my_bucket', object: params.require(:object_name), alt: 'media'} 
    ) 
    send_data bucket_get_result.body, :disposition => 'inline' 
    end 
end 
這可以用 send_data方法來完成
相關問題