更新时间:2024-04-16 GMT+08:00

对象元数据简介

元数据(Metadata)为描述对象属性的信息,是一组名称和值的配对,用作对象管理的一部分。

当前仅支持系统定义的元数据。

系统定义的元数据又分为两种类别:系统控制和用户控制。如Last-Modified日期等数据由系统控制,不可修改;如为对象配置的ContentLanguage,用户可以通过接口进行修改。用户可控制修改的元数据描述如下:

表1 OBS的元数据

名称

说明

ContentDisposition

为请求的对象提供一个默认的文件名赋值给该对象,当下载对象或者访问对象时,以默认文件名命名的文件将直接在浏览器上显示或在访问时弹出文件下载对话框。

例如:元数据名称选择为“ContentDisposition”,元数据值填写为“attachment;filename="testfile.xls"”,当通过链接访问设置了该元数据的对象时,会直接弹出一个对象下载的对话框,且对象名称会被修改为“testfile.xls”。详情请参见HTTP协议中关于ContentDisposition的定义。

ContentLanguage

说明访问者希望采用的语言或语言组合,以根据自己偏好的语言来定制。详情请参见HTTP协议中关于ContentLanguage的定义。

WebsiteRedirectLocation

为对象提供重定向功能,重定向到其他对象或者外部的URL。重定向功能通过静态网站托管实现。

例如,可根据如下步骤实现对象重定向功能。

  1. 为桶“testbucket”根目录下的对象“testobject.html”设置元数据,元数据名称选择为“WebsiteRedirectLocation”,元数据值填写为“http://www.example.com”
    说明:

    OBS仅支持为桶根目录下的对象设置重定向,不支持为桶中文件夹下的对象设置重定向。

  2. 在桶“testbucket”中配置静态网站托管,将该桶中的对象“testobject.html”设置为静态网站托管的“默认首页”。
  3. 当通过静态网站托管页面上的“访问地址”访问对象“testobject.html”时,会直接重定向访问http://www.example.com。

ContentEncoding

指定对象被下载时的内容编码格式,可以设置如下类型:

  • 标准定义:compress、deflate、exi、identity、gzip、pack200-gzip
  • 其他:br、bzip2、lzma 、peerdist、sdch、xpress、xz

CacheControl

指定对象被下载时的网页的缓存行为。

  • 可缓冲性:public、private、no-cache、only-if-cached
  • 到期时间:max-age=<seconds>、s-maxage=<seconds>、max-stale[=<seconds>]、min-fresh=<seconds>、stale-while-revalidate=<seconds>、stale-if-error=<seconds>
  • 重新验证和重新加载:must-revalidate、proxy-revalidate、immutable
  • 其他:no-store、no-transform

Expires

设置缓存过期时间(GMT)。

ContentType

设置对象的文件类型。详见对象元数据Content-Type介绍

  • 当桶开启多版本控制时,最新版本的对象支持设置元数据,历史版本的对象不支持设置元数据。