获取对象元数据

您可以使用 head_object 接口获取对象元数据。head_object操作的请求参数与 get_object 一样,但是 head_object 返回的Http响应中没有对象数据。

以下代码展示如何获取一个对象的元数据并打印其中的 etag 和 content_length:

def head_object(client, bucket_name, object_key)
  resp = client.head_object(
    bucket: bucket_name,
    key: object_key
  )
  puts "Object's etag: #{resp.etag}, content length: #{resp.content_length} bytes"
rescue StandardError => e
  puts "Error heading object: #{e.message}"
en

head_object返回的部分属性如下:

参数 类型 说明
content_length Integer 本次请求返回对象数据的大小(单位:字节)。
content_type String 对象文件格式的标准MIME类型
etag String 对象的Entity Ttag
last_modified Time 最近一次修改对象的时间。