7 "github.com/aliyun/aliyun-oss-go-sdk/oss"
10 // DeleteObjectSample shows how to delete single file or multiple files
11 func DeleteObjectSample() {
13 bucket, err := GetTestBucket(bucketName)
18 var val = "抽刀断水水更流,举杯销愁愁更愁。 人生在世不称意,明朝散发弄扁舟。"
20 // Case 1: Delete an object
21 err = bucket.PutObject(objectKey, strings.NewReader(val))
26 err = bucket.DeleteObject(objectKey)
31 // Case 2: Delete multiple Objects
32 err = bucket.PutObject(objectKey+"1", strings.NewReader(val))
37 err = bucket.PutObject(objectKey+"2", strings.NewReader(val))
42 delRes, err := bucket.DeleteObjects([]string{objectKey + "1", objectKey + "2"})
46 fmt.Println("Del Res:", delRes)
48 lsRes, err := bucket.ListObjects()
52 fmt.Println("Objects:", getObjectsFormResponse(lsRes))
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))
60 err = bucket.PutObject(objectKey+"2", strings.NewReader(val))
65 delRes, err = bucket.DeleteObjects([]string{objectKey + "1", objectKey + "2"},
66 oss.DeleteObjectsQuiet(false))
70 fmt.Println("Detail Del Res:", delRes)
72 lsRes, err = bucket.ListObjects()
76 fmt.Println("Objects:", getObjectsFormResponse(lsRes))
78 // Case 4: Delete multiple objects and returns undeleted objects in quiet mode
79 err = bucket.PutObject(objectKey+"1", strings.NewReader(val))
84 err = bucket.PutObject(objectKey+"2", strings.NewReader(val))
89 delRes, err = bucket.DeleteObjects([]string{objectKey + "1", objectKey + "2"}, oss.DeleteObjectsQuiet(true))
93 fmt.Println("Sample Del Res:", delRes)
95 lsRes, err = bucket.ListObjects()
99 fmt.Println("Objects:", getObjectsFormResponse(lsRes))
101 // Delete object and bucket
102 err = DeleteTestBucketAndObject(bucketName)
107 fmt.Println("DeleteObjectSample completed")