API | 操作名 | 操作描述 |
设置存储桶复制 | 对已启用版本控制的存储桶配置存储桶复制规则 | |
查询存储桶复制 | 查询存储桶的存储桶复制规则 | |
删除存储桶复制 | 删除存储桶的存储桶复制规则 |
func (s *BucketService) PutBucketReplication(ctx context.Context, opt *PutBucketReplicationOptions) (*Response, error)
package mainimport ("context""github.com/tencentyun/cos-go-sdk-v5""net/http""net/url""os")func main() {// 存储桶名称,由 bucketname-appid 组成,appid 必须填入,可以在 COS 控制台查看存储桶名称。 https://console.tencentcloud.com/cos5/bucket// 替换为用户的 region,存储桶 region 可以在 COS 控制台“存储桶概览”查看 https://console.tencentcloud.com/ ,关于地域的详情见 https://www.tencentcloud.com/document/product/436/6224?from_cn_redirect=1 。u, _ := url.Parse("https://examplebucket-12500000000.cos.ap-guangzhou.myqcloud.com")b := &cos.BaseURL{BucketURL: u}client := cos.NewClient(b, &http.Client{Transport: &cos.AuthorizationTransport{// 通过环境变量获取密钥// 环境变量 SECRETID 表示用户的 SecretId,登录访问管理控制台查看密钥,https://console.tencentcloud.com/cam/capiSecretID: os.Getenv("SECRETID"), // 用户的 SecretId,建议使用子账号密钥,授权遵循最小权限指引,降低使用风险。子账号密钥获取可参见 https://www.tencentcloud.com/document/product/598/37140?from_cn_redirect=1// 环境变量 SECRETKEY 表示用户的 SecretKey,登录访问管理控制台查看密钥,https://console.tencentcloud.com/cam/capiSecretKey: os.Getenv("SECRETKEY"), // 用户的 SecretKey,建议使用子账号密钥,授权遵循最小权限指引,降低使用风险。子账号密钥获取可参见 https://www.tencentcloud.com/document/product/598/37140?from_cn_redirect=1},})opt := &cos.PutBucketReplicationOptions{// qcs::cam::uin/[UIN]:uin/[Subaccount]Role: "qcs::cam::uin/100000000001:uin/100000000001",Rule: []cos.BucketReplicationRule{{ID: "1",// Enabled or DisabledStatus: "Enabled",Destination: &cos.ReplicationDestination{// qcs::cos:[Region]::[Bucketname-Appid]Bucket: "qcs::cos:ap-beijing::destinationbucket-1250000000",},},},}_, err := client.Bucket.PutBucketReplication(context.Background(), opt)if err != nil {panic(err)}}
type PutBucketReplicationOptions struct {Role stringRule []BucketReplicationRule}type BucketReplicationRule struct {ID stringStatus stringPrefix stringDestination *ReplicationDestination}type ReplicationDestination struct {Bucket stringStorageClass string}
参数名称 | 描述 | 类型 |
PutBucketReplicationOptions | 存储桶复制规则 | struct |
Role | 发起者身份标示: qcs::cam::uin/<OwnerUin>:uin/<SubUin> | string |
Rule | 具体配置信息,最多支持1000个,所有策略只能指向一个目标存储桶 | struct |
ID | 用来标注具体 Rule 的名称 | string |
Status | 标识 Rule 是否生效,枚举值:Enabled, Disabled | string |
Prefix | 前缀匹配策略,不可重叠,重叠返回错误。前缀匹配根目录为空 | string |
Destination | 目标存储桶信息 | struct |
Bucket | 资源标识符: qcs::cos:[region]::[bucketname-AppId] | string |
StorageClass | string |
func (s *BucketService) GetBucketReplication(ctx context.Context) (*GetBucketReplicationResult, *Response, error)
package mainimport ("context""github.com/tencentyun/cos-go-sdk-v5""net/http""net/url""os")func main() {// 存储桶名称,由 bucketname-appid 组成,appid 必须填入,可以在 COS 控制台查看存储桶名称。 https://console.tencentcloud.com/cos5/bucket// 替换为用户的 region,存储桶 region 可以在 COS 控制台“存储桶概览”查看 https://console.tencentcloud.com/ ,关于地域的详情见 https://www.tencentcloud.com/document/product/436/6224?from_cn_redirect=1 。u, _ := url.Parse("https://examplebucket-12500000000.cos.ap-guangzhou.myqcloud.com")b := &cos.BaseURL{BucketURL: u}client := cos.NewClient(b, &http.Client{Transport: &cos.AuthorizationTransport{// 通过环境变量获取密钥// 环境变量 SECRETID 表示用户的 SecretId,登录访问管理控制台查看密钥,https://console.tencentcloud.com/cam/capiSecretID: os.Getenv("SECRETID"), // 用户的 SecretId,建议使用子账号密钥,授权遵循最小权限指引,降低使用风险。子账号密钥获取可参见 https://www.tencentcloud.com/document/product/598/37140?from_cn_redirect=1// 环境变量 SECRETKEY 表示用户的 SecretKey,登录访问管理控制台查看密钥,https://console.tencentcloud.com/cam/capiSecretKey: os.Getenv("SECRETKEY"), // 用户的 SecretKey,建议使用子账号密钥,授权遵循最小权限指引,降低使用风险。子账号密钥获取可参见 https://www.tencentcloud.com/document/product/598/37140?from_cn_redirect=1},})_, _, err := client.Bucket.GetBucketReplication(context.Background())if err != nil {panic(err)}}
type GetBucketReplicationResult struct {Role stringRule []BucketReplicationRule}type BucketReplicationRule struct {ID stringStatus stringPrefix stringDestination *ReplicationDestination}type ReplicationDestination struct {Bucket stringStorageClass string}
参数名称 | 描述 | 类型 |
GetBucketReplicationResult | 存储桶复制规则 | struct |
Role | 发起者身份标示: qcs::cam::uin/<OwnerUin>:uin/<SubUin> | string |
Rule | 具体配置信息,最多支持1000个,所有策略只能指向一个目标存储桶 | struct |
ID | 用来标注具体 Rule 的名称 | string |
Status | 标识 Rule 是否生效,枚举值:Enabled,isabled | string |
Prefix | 前缀匹配策略,不可重叠,重叠返回错误。前缀匹配根目录为空 | string |
Destination | 目标存储桶信息 | struct |
Bucket | 资源标识符: qcs::cos:[region]::[bucketname-AppId] | string |
StorageClass | string |
func (s *BucketService) DeleteBucketReplication(ctx context.Context) (*Response, error)
package mainimport ("context""github.com/tencentyun/cos-go-sdk-v5""net/http""net/url""os")func main() {// 存储桶名称,由 bucketname-appid 组成,appid 必须填入,可以在 COS 控制台查看存储桶名称。 https://console.tencentcloud.com/cos5/bucket// 替换为用户的 region,存储桶 region 可以在 COS 控制台“存储桶概览”查看 https://console.tencentcloud.com/ ,关于地域的详情见 https://www.tencentcloud.com/document/product/436/6224?from_cn_redirect=1 。u, _ := url.Parse("https://examplebucket-12500000000.cos.ap-guangzhou.myqcloud.com")b := &cos.BaseURL{BucketURL: u}client := cos.NewClient(b, &http.Client{Transport: &cos.AuthorizationTransport{// 通过环境变量获取密钥// 环境变量 SECRETID 表示用户的 SecretId,登录访问管理控制台查看密钥,https://console.tencentcloud.com/cam/capiSecretID: os.Getenv("SECRETID"), // 用户的 SecretId,建议使用子账号密钥,授权遵循最小权限指引,降低使用风险。子账号密钥获取可参见 https://www.tencentcloud.com/document/product/598/37140?from_cn_redirect=1// 环境变量 SECRETKEY 表示用户的 SecretKey,登录访问管理控制台查看密钥,https://console.tencentcloud.com/cam/capiSecretKey: os.Getenv("SECRETKEY"), // 用户的 SecretKey,建议使用子账号密钥,授权遵循最小权限指引,降低使用风险。子账号密钥获取可参见 https://www.tencentcloud.com/document/product/598/37140?from_cn_redirect=1},})_, err := client.Bucket.DeleteBucketReplication(context.Background())if err != nil {panic(err)}}
本页内容是否解决了您的问题?