You need to enable JavaScript to run this app.
文档中心
对象存储

对象存储

复制全文
下载 pdf
基础操作
列举 ObjectSet( Go SDK)
复制全文
下载 pdf
列举 ObjectSet( Go SDK)
本文介绍如何通过 TOS Go SDK 列举 Bucket 下的 ObjectSet,支持按前缀、标签和 Marker 分页过滤。​
注意事项​
  • Bucket 必须已开启 ObjectSet。​
  • MaxKeys 的最大值由服务端控制。​
  • 当返回 IsTruncated=true 时,可使用 NextMarker 继续列举。​
  • 通过子账号调用时,需要具备当前 Bucket 的 tos:ListObjectSet 权限。​
示例代码​
​
package main​
​
import (​
"context"​
"fmt"​
"os"​
​
"github.com/volcengine/ve-tos-golang-sdk/v2/tos"​
)​
​
func checkErr(err error) {​
if err != nil {​
if serverErr, ok := err.(*tos.TosServerError); ok {​
fmt.Println("Error:", serverErr.Error())​
fmt.Println("Request ID:", serverErr.RequestID)​
fmt.Println("Response Status Code:", serverErr.StatusCode)​
fmt.Println("Response Header:", serverErr.Header)​
fmt.Println("Response Err Code:", serverErr.Code)​
fmt.Println("Response Err Msg:", serverErr.Message)​
} else if clientErr, ok := err.(*tos.TosClientError); ok {​
fmt.Println("Error:", clientErr.Error())​
fmt.Println("Client Cause Err:", clientErr.Cause.Error())​
} else {​
fmt.Println("Error:", err)​
}​
panic(err)​
}​
}​
​
func main() {​
var (​
accessKey = os.Getenv("TOS_ACCESS_KEY")​
secretKey = os.Getenv("TOS_SECRET_KEY")​
// Bucket 对应的 Endpoint,以华北 2(北京)为例:https://tos-cn-beijing.volces.com​
endpoint = "https://tos-cn-beijing.volces.com"​
region = "cn-beijing"​
// 填写 BucketName​
bucketName = "*** Provide your bucket name ***"​
// 填写 ObjectSet 名称前缀​
objectSetPrefix = "docs/"​
ctx = context.Background()​
)​
​
// 初始化客户端​
client, err := tos.NewClientV2(endpoint, tos.WithRegion(region), tos.WithCredentials(tos.NewStaticCredentials(accessKey, secretKey)))​
checkErr(err)​
​
marker := ""​
for {​
listOutput, err := client.ListObjectSet(ctx, &tos.ListObjectSetInput{​
Bucket: bucketName,​
Prefix: objectSetPrefix,​
MaxKeys: 100,​
Marker: marker,​
})​
checkErr(err)​
fmt.Println("ListObjectSet Request ID:", listOutput.RequestID)​
for _, objectSet := range listOutput.ObjectSets {​
fmt.Println("ObjectSetName:", objectSet.ObjectSetName)​
}​
if !listOutput.IsTruncated {​
break​
}​
marker = listOutput.NextMarker​
}​
}​
​
相关文档​
关于列举 Bucket 下的 ObjectSet,支持按前缀、标签和 Marker 分页过滤的相关 API 接口,请参见 ListObjectSet。​
最近更新时间:2026.06.04 17:37:36
这个页面对您有帮助吗?
有用
有用
无用
无用