我在考慮是否在S3上託管上傳的媒體文件(視頻和音頻),而不是在本地。我需要在每次下載時檢查用戶的權限。在這種情況下,Amazon S3是否有所幫助?
所以會有一個像get_file
這樣的操作,它首先檢查用戶的權限,然後從S3獲取文件並使用send_file將其發送給用戶。
def get_file
if @user.can_download(params[:file_id])
# first, download the file from S3 and then send it to the user using send_file
end
end
但是在這種情況下,服務器(不必要地)首先從S3下載文件,然後將其發送給用戶。我認爲S3的用例是繞過Rails/HTTP服務器堆棧以減少負載。
我在想這錯了嗎?
PS。我正在使用CarrierWave進行文件上傳。不確定這是否相關。
感謝您發佈您的解決方案。你可能想標記它爲回答:) – iwasrobbed 2011-05-27 17:03:14