github.com/qiniu/go-sdk/v7@v7.27.0/examples/rs_move/main.go (about) 1 package main 2 3 import ( 4 "fmt" 5 "os" 6 7 "github.com/qiniu/go-sdk/v7/auth" 8 "github.com/qiniu/go-sdk/v7/storage" 9 ) 10 11 var ( 12 accessKey = os.Getenv("QINIU_ACCESS_KEY") 13 secretKey = os.Getenv("QINIU_SECRET_KEY") 14 bucket = os.Getenv("QINIU_TEST_BUCKET") 15 ) 16 17 func main() { 18 mac := auth.New(accessKey, secretKey) 19 20 cfg := storage.Config{ 21 // 是否使用https域名进行资源管理 22 UseHTTPS: false, 23 } 24 // 指定空间所在的区域,如果不指定将自动探测 25 // 如果没有特殊需求,默认不需要指定 26 // cfg.Zone=&storage.ZoneHuabei 27 bucketManager := storage.NewBucketManager(mac, &cfg) 28 29 srcBucket := bucket 30 srcKey := "github.png" 31 // 目标空间可以和源空间相同,但是不能为跨机房的空间 32 destBucket := srcBucket 33 // 目标文件名可以和源文件名相同,也可以不同 34 destKey := "github-new.png" 35 // 如果目标文件存在,是否强制覆盖,如果不覆盖,默认返回614 file exists 36 force := false 37 err := bucketManager.Move(srcBucket, srcKey, destBucket, destKey, force) 38 if err != nil { 39 fmt.Println(err) 40 return 41 } 42 }