github.com/aliyun/aliyun-oss-go-sdk@v3.0.2+incompatible/sample/delete_object.go (about) 1 package sample 2 3 import ( 4 "fmt" 5 "strings" 6 7 "github.com/aliyun/aliyun-oss-go-sdk/oss" 8 ) 9 10 // DeleteObjectSample shows how to delete single file or multiple files 11 func DeleteObjectSample() { 12 // Create a bucket 13 bucket, err := GetTestBucket(bucketName) 14 if err != nil { 15 HandleError(err) 16 } 17 18 var val = "抽刀断水水更流,举杯销愁愁更愁。 人生在世不称意,明朝散发弄扁舟。" 19 20 // Case 1: Delete an object 21 err = bucket.PutObject(objectKey, strings.NewReader(val)) 22 if err != nil { 23 HandleError(err) 24 } 25 26 err = bucket.DeleteObject(objectKey) 27 if err != nil { 28 HandleError(err) 29 } 30 31 // Case 2: Delete multiple Objects 32 err = bucket.PutObject(objectKey+"1", strings.NewReader(val)) 33 if err != nil { 34 HandleError(err) 35 } 36 37 err = bucket.PutObject(objectKey+"2", strings.NewReader(val)) 38 if err != nil { 39 HandleError(err) 40 } 41 42 delRes, err := bucket.DeleteObjects([]string{objectKey + "1", objectKey + "2"}) 43 if err != nil { 44 HandleError(err) 45 } 46 fmt.Println("Del Res:", delRes) 47 48 lsRes, err := bucket.ListObjects() 49 if err != nil { 50 HandleError(err) 51 } 52 fmt.Println("Objects:", getObjectsFormResponse(lsRes)) 53 54 // Case 3: Delete multiple objects and it will return deleted objects in detail mode which is by default. 55 err = bucket.PutObject(objectKey+"1", strings.NewReader(val)) 56 if err != nil { 57 HandleError(err) 58 } 59 60 err = bucket.PutObject(objectKey+"2", strings.NewReader(val)) 61 if err != nil { 62 HandleError(err) 63 } 64 65 delRes, err = bucket.DeleteObjects([]string{objectKey + "1", objectKey + "2"}, 66 oss.DeleteObjectsQuiet(false)) 67 if err != nil { 68 HandleError(err) 69 } 70 fmt.Println("Detail Del Res:", delRes) 71 72 lsRes, err = bucket.ListObjects() 73 if err != nil { 74 HandleError(err) 75 } 76 fmt.Println("Objects:", getObjectsFormResponse(lsRes)) 77 78 // Case 4: Delete multiple objects and returns undeleted objects in quiet mode 79 err = bucket.PutObject(objectKey+"1", strings.NewReader(val)) 80 if err != nil { 81 HandleError(err) 82 } 83 84 err = bucket.PutObject(objectKey+"2", strings.NewReader(val)) 85 if err != nil { 86 HandleError(err) 87 } 88 89 delRes, err = bucket.DeleteObjects([]string{objectKey + "1", objectKey + "2"}, oss.DeleteObjectsQuiet(true)) 90 if err != nil { 91 HandleError(err) 92 } 93 fmt.Println("Sample Del Res:", delRes) 94 95 lsRes, err = bucket.ListObjects() 96 if err != nil { 97 HandleError(err) 98 } 99 fmt.Println("Objects:", getObjectsFormResponse(lsRes)) 100 101 // Delete object and bucket 102 err = DeleteTestBucketAndObject(bucketName) 103 if err != nil { 104 HandleError(err) 105 } 106 107 fmt.Println("DeleteObjectSample completed") 108 }