我一直在使用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
答案 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