s3链接与aws-sdk一起过期

时间:2014-11-01 14:57:50

标签: ruby-on-rails ruby amazon-web-services aws-sdk

我一直在使用gem'aws-sdk'上传带有rails的文件,现在我得到了创建的链接,基本上这个链接将在一小时后过期(我认为这是默认值),但我需要将此链接作为公众,所以有没有阻止链接过期?我试过这个

AWS.config(:access_key_id => 'XXXXXXXXXX',
                  :secret_access_key => 'XXXXXXX')
s3 = AWS::S3.new
my_bucket = s3.buckets['xxx/xxxx/xxxx']
object = my_bucket.objects[filename]
puts object.url_for(:read).to_s

1 个答案:

答案 0 :(得分:0)

将您的文件访问权限设置为公开阅读

s3 = Aws::S3::Resource.new(
credentials: Aws::Credentials.new('akid', 'secret'),
region: 'us-west-1'
)

obj = s3.bucket('bucket-name').object('key')
obj.upload_file('/source/file/path', acl:'public-read')
obj.public_url

This link will help you