获取目录文件列表-ListObjects
简介
用于以目录形式列出Bucket下的文件信息
定义
句法(Syntax):
GET /?listobjects&prefix=<prefix>&marker=<marker>&max-keys=<max-keys>&delimiter=<delimiter> HTTP/1.1
Host: <bucket_name>.ufile.ucloud.cn
Authorization: <token>请求参数(Request Parameters)
请求头(Request Headers)
| Parameter name | Type | Description | Required |
|---|---|---|---|
| Authorization | string | 上传请求的授权签名,API 签名算法 | Yes |
请求元素(Request Elements)
| Parameter name | Type | Description | Required |
|---|---|---|---|
| Prefix | string | 返回以Prefix作为前缀的目录文件 当delimiter为("")时,返回的列表包含prefix内的所有子文件及子文件夹 当delimiter为(”/“)时,返回prefix下的所有文件和子文件夹,但不显示子文件夹下递归的目录和文件。 ps:当delimiter为(”/“)时,且prefix以(”/“)结尾时,列表返回不会包含与prefix相同的文件/目录名的对象 | No |
| Marker | string | 返回以字母排序后,大于Marker的目录文件列表 默认值:无 | No |
| MaxKeys | int | 指定返回目录文件列表的最大数量 范围:[0,1000] 默认值:100 | No |
| Delimiter | string | 目录分隔符,当前只支持”/“和"". 当Delimiter设置为”/“时,返回目录形式的文件列表. 当Delimiter设置为""时,返回非目录层级文件列表 | No |
响应(Responses)
响应头(Response Headers)
| Parameter name | Type | Description |
|---|---|---|
| Content-Length | Integer | 响应body部分的长度 |
| Content-Type | String | 响应body部分的类型 |
响应元素(Response Elements)
| Parameter name | Type | Description |
|---|---|---|
| Name | string | Bucket名称 |
| Prefix | string | 查询结果的前缀 |
| MaxKeys | int | 查询结果的最大数量 |
| Delimiter | string | 查询结果的目录分隔符 |
| IsTruncated | bool | 返回结果是否被截断。若值为true,则表示仅返回列表的一部分,NextMarker可作为之后迭代的游标 |
| NextMarker | string | 可作为查询请求中的的Marker参数,实现迭代查询 |
| Contents | array | 文件列表 |
| CommonPrefixes | array | 以Delimiter结尾,并且有共同前缀的目录列表 |
内容(Contents)
| Parameter name | Type | Description |
|---|---|---|
| Key | string | 文件名称 |
| MimeType | string | 文件mimetype |
| ETag | string | 标识文件内容 |
| Size | string | 文件大小 |
| StorageClass | string | 文件存储类型 |
| LastModified | int | 文件最后修改时间 |
| CreateTime | int | 文件创建时间 |
| UserMeta | 键值对 | 用户元数据 |
通用前缀(CommonPrefixes)
| Parameter name | Type | Description |
|---|---|---|
| Prefix | string | 以Delimiter结尾的公共前缀目录名 |
示例
请求示例(Example Request):
GET /?listobjects&delimiter=/&max-keys=2 HTTP/1.1
Host: buc-test.ufile.ucloud.cn
Authorization: demouser@ucloud.cn13424346821929713944:S5FVD2w613MKb/hisjaqHdjvn9U=响应示例(Example Response):
HTTP/1.1 200 OK
Content-Length: 347
Content-Type: application/json
{
"Name":"buc-test",
"Prefix":"",
"MaxKeys":"2",
"Delimiter":"/",
"IsTruncated":true,
"NextMarker":"0221.txt",
"Contents":[
{
"Key":"0221.txt",
"MimeType":"text/x-c",
"ETag":"AQAAAMwtcq6V6wgHkQIHOrPu7H6YWuSo",
"Size":"6",
"StorageClass":"STANDARD",
"LastModified":1552039614,
"CreateTime":1552039614
}
],
"CommonPrefixes":[
{
"Prefix":"/"
}
]
}