预签名URL

您可以利用 presigned_url 接口为一个对象生成一个预签名的URL链接,通过该链接可上传或下载对象。

生成下载对象的预签名url的代码示例:

def generate_presigned_url(client, bucket_name, object_key)
  signer = Aws::S3::Presigner.new(client: client)
  url = signer.presigned_url(
    :get_object,
    bucket: bucket_name,
    key: object_key
  )
  puts url
rescue StandardError => e
  puts "Error generating presigned url: #{e.message}"
end

可选参数如下:

参数 类型 说明
expires_in Integer 预签名URL过期的时间,单位为秒。 默认为15分钟,可以设置的最长过期时间为一周(604800)。
time Time 预签名URL开始生效的时间,默认为当前时间。