更新时间:2026-03-13 GMT+08:00
分享

obs_list_versions

表1 obs_list_versions

参数名称

参数类型

是否必选

描述

bucket_name

const char *

可选

参数解释

桶名。

约束限制:

  • 桶的名字需全局唯一,不能与已有的任何桶名称重复,包括其他用户创建的桶。
  • 桶命名规则如下:
    • 3~63个字符,数字或字母开头,支持小写字母、数字、“-”、“.”。
    • 禁止使用IP地址。
    • 禁止以“-”或“.”开头及结尾。
    • 禁止两个“.”相邻(如:“my..bucket”)。
    • 禁止“.”和“-”相邻(如:“my-.bucket”和“my.-bucket”)。
  • 同一用户在同一个区域多次创建同名桶不会报错,创建的桶属性以第一次请求为准。

默认取值:

prefix

const char *

可选

参数解释:

限定返回的对象名必须带有prefix前缀。

约束限制:

取值范围:

长度大于0且不超过1024的字符串。

默认取值:

key_marker

const char *

可选

参数解释:

列举多版本对象的起始位置,返回的对象列表将是对象名按照字典序排序后该参数以后的所有对象。

约束限制:

该字段仅用于多版本列举。

取值范围:

上次请求返回体的nextKeyMarker值。

默认取值:

delimiter

const char *

可选

参数解释:

将对象名进行分组的分隔符。如果指定了prefix,从prefix到第一次出现delimiter间具有相同字符串的对象名会被分成一组,形成一条CommonPrefixes;如果没有指定prefix,从对象名的首字符到第一次出现delimiter间具有相同字符串的对象名会被分成一组,形成一条CommonPrefixes。

例如,桶中有3个对象,分别为abcd、abcde、bbcde。如果指定delimiter为d,prefix为a,abcd、abcde会被分成一组,形成一条前缀为abcd的commonPrefix;如果只指定delimiter为d,abcd、abcde会被分成一组,形成一条前缀为abcd的commonPrefix,而bbcde会被单独分成一组,形成一条前缀为bbcd的commonPrefix。

对于并行文件系统,不携带此参数时默认列举是递归列举此目录下所有内容,会列举子目录。在大数据场景下(目录层级深、目录下文件多)的列举,建议设置[delimiter=/],只列举当前目录下的内容,不列举子目录,提高列举效率。

取值范围:

长度大于0且不超过1024的字符串。

默认取值:

max_keys

const char *

可选

参数解释:

列举多版本对象的最大数目,返回的对象列表将是按照字典顺序的最多前maxKeys个对象。

约束限制:

当该参数超出1000时,按照默认的1000进行处理。

取值范围:

[1,1000],单位:个。

默认取值:

1000

versions

obs_version *

可选

参数解释:

对象信息

约束限制:

取值范围:

默认取值:

versions_count

int

可选

参数解释:

versions的数量

约束限制:

取值范围:

默认取值:

common_prefixes

const char **

可选

参数解释:

当请求中设置了delimiter分组字符时,返回按delimiter分组后的对象名称前缀列表。

约束限制:

取值范围:

默认取值:

common_prefixes_count

int

可选

参数解释:

common_prefixes的数量。

约束限制:

取值范围:

默认取值:

表2 obs_version

参数名称

参数类型

是否必选

描述

key

const char *

可选

参数解释:

对象名。对象名是对象在存储桶中的唯一标识。对象名是对象在桶中的完整路径,路径中不包含桶名。

例如,您对象的访问地址为examplebucket.obs.cn-north-4.myhuaweicloud.com/folder/test.txt 中,对象名为folder/test.txt。

取值范围:

长度大于0且不超过1024的字符串。

默认取值:

version_id

const char *

可选

参数解释:

对象的版本号。

约束限制:

取值范围:

默认取值:

is_latest

const char *

可选

参数解释:

标识对象是否是最新的版本。

约束限制:

取值范围:

默认取值:

last_modified

int64_t

可选

参数解释:

对象最近一次被修改的时间(UTC时间)。

约束限制:

取值范围:

长度大于0且不超过1024的字符串。

默认取值:

etag

const char *

可选

参数解释

对象的base64编码的128位MD5摘要。ETag是对象内容的唯一标识,可以通过该值识别对象内容是否有变化。比如上传对象时ETag为A,下载对象时ETag为B,则说明对象内容发生了变化。实际的ETag是对象的哈希值。ETag只反映变化的内容,而不是其元数据。上传的对象或复制操作创建的对象,通过MD5加密后都有唯一的ETag。

约束限制:

取值范围:

长度为32的字符串。

默认取值:

size

uint64_t

可选

参数解释:

对象的字节数。

约束限制:

取值范围:

默认取值:

owner_id

const char *

可选

参数解释:

对象拥有者的domain_id(账号ID)。

约束限制:

取值范围:

如何获取桶所有者的账号ID请参见如何获取账号ID和用户ID?

默认取值:

storage_class

const char *

可选

参数解释:

对象的存储类别。

约束限制:

取值范围:

默认取值:

is_delete

const char *

可选

参数解释:

是否是删除标记。

约束限制:

取值范围:

默认取值:

相关文档