从S3下载文件到Rails 4应用程序

jde*_*vio 3 ruby ruby-on-rails amazon-s3 amazon-web-services ruby-on-rails-4

我有一个AWS VM,它运行每日任务并生成多个文件.我希望我的Rails应用程序下载这些文件并将它们放在应用程序中的文件夹中.Ruby中是否有一个gem或方法可以做到这一点?

我知道如何使用s3cmd在bash中执行此操作,我想我可以创建一个脚本来以这种方式获取它们,但是寻找更原生的rails方式.

我正在使用这些文件中的数据作为应用程序,但我不希望用户能够下载它们.

Tre*_*owe 15

aws-sdkv2的宝石提供了从亚马逊S3下载对象的简单接口.

require 'aws-sdk'

s3 = Aws::S3::Resource.new(
  region: 'us-east-1',
  access_key_id: '...',
  secret_access_key: '...'
)

s3.bucket('bucket-name').object('key').get(response_target: '/path/to/file')
Run Code Online (Sandbox Code Playgroud)

  • 这是你的文件名. (2认同)