You need to enable JavaScript to run this app.
导航

删除桶(Go SDK)

最近更新时间2024.02.04 18:30:55

首次发布时间2021.12.31 17:38:36

当您不再需要保留某个桶(Bucket)时,可将其删除,以免产生额外费用。

注意事项

  • 桶删除后不可恢复,请谨慎操作。
  • 删除桶之前,您必须具备 tos:DeleteBucket 权限。具体操作,请参见权限配置指南

前提条件

删除桶之前,请确保您已经删除桶中所有数据。

  • 如果桶开启了版本控制,请确保已删除当前桶内所有当前版本和历史版本对象。具体操作,请参见删除对象
  • 如果桶中存在未合并的分片,请确保删除所有分片数据,具体操作,请参见删除分片
  • 如果桶中的对象较多,您可以通过生命周期规则,设置对象的批量删除。具体操作,请参见设置生命周期规则

示例代码

package main

import (
   "context"
   "fmt"

   "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 ***"
   )
   // 初始化客户端
   client, err := tos.NewClientV2(endpoint, tos.WithRegion(region), tos.WithCredentials(tos.NewStaticCredentials(accessKey, secretKey)))
   checkErr(err)
   // 删除 Bucket
   output, err := client.DeleteBucket(context.Background(), &tos.DeleteBucketInput{Bucket: bucketName})
   checkErr(err)
   fmt.Println("Delete Bucket Request ID: ", output.RequestID)
   fmt.Println("Delete Bucket Response Status Code: ", output.StatusCode)
}

相关文档

关于删除桶的 API 文档,请参见 DeleteBucket