假设我在Rails应用程序中使用Carrierwave将文件上传到S3。我需要确定:
我怎样才能做到这一点?
答案 0 :(得分:2)
你需要自己编写代码。您需要跟踪下载文件的记录。
为此,您需要创建一个表,其中包含已下载的用户和文件的信息。
要隐藏实际的s3网址,您需要先从s3中读取代码中的文件,然后将该文件提供给send_data
的用户。
xyz = Xyz.find(params[:id])
data = open(xyz_file_path).read
send_file data, filename: file_name_that_you_want,
type: file_content_type, stream: 'true',
:x_sendfile => true