OSDN Git Service

Create ossClient.go (#574)
[bytom/vapor.git] / vendor / github.com / aliyun / aliyun-oss-go-sdk / sample / cname_sample.go
1 package sample
2
3 import (
4         "fmt"
5         "io/ioutil"
6         "strings"
7
8         "github.com/aliyun/aliyun-oss-go-sdk/oss"
9 )
10
11 // CnameSample shows the cname usage
12 func CnameSample() {
13         // New client
14         client, err := oss.New(endpoint4Cname, accessID, accessKey, oss.UseCname(true))
15         if err != nil {
16                 HandleError(err)
17         }
18
19         // Create bucket
20         err = client.CreateBucket(bucketName)
21         if err != nil {
22                 HandleError(err)
23         }
24
25         // Set bucket ACL
26         err = client.SetBucketACL(bucketName, oss.ACLPrivate)
27         if err != nil {
28                 HandleError(err)
29         }
30
31         // Look up bucket ACL
32         gbar, err := client.GetBucketACL(bucketName)
33         if err != nil {
34                 HandleError(err)
35         }
36         fmt.Println("Bucket ACL:", gbar.ACL)
37
38         // List buckets, the list operation could not be done by cname's endpoint
39         _, err = client.ListBuckets()
40         if err == nil {
41                 HandleError(err)
42         }
43
44         bucket, err := client.Bucket(bucketName)
45         if err != nil {
46                 HandleError(err)
47         }
48
49         objectValue := "长忆观潮, 满郭人争江上望。来疑沧海尽成空, 万面鼓声中。弄潮儿向涛头立, 手把红旗旗不湿。别来几向梦中看, 梦觉尚心寒。"
50
51         // Put object
52         err = bucket.PutObject(objectKey, strings.NewReader(objectValue))
53         if err != nil {
54                 HandleError(err)
55         }
56
57         // Get object
58         body, err := bucket.GetObject(objectKey)
59         if err != nil {
60                 HandleError(err)
61         }
62         data, err := ioutil.ReadAll(body)
63         body.Close()
64         if err != nil {
65                 HandleError(err)
66         }
67         fmt.Println(objectKey, ":", string(data))
68
69         // Put object from file
70         err = bucket.PutObjectFromFile(objectKey, localFile)
71         if err != nil {
72                 HandleError(err)
73         }
74
75         // Get object to file
76         err = bucket.GetObjectToFile(objectKey, localFile)
77         if err != nil {
78                 HandleError(err)
79         }
80
81         // List objects
82         lor, err := bucket.ListObjects()
83         if err != nil {
84                 HandleError(err)
85         }
86         fmt.Println("objects:", lor.Objects)
87
88         // Delete object
89         err = bucket.DeleteObject(objectKey)
90         if err != nil {
91                 HandleError(err)
92         }
93
94         fmt.Println("CnameSample completed")
95 }