获取自定义元数据

更新时间: 2019-03-14 10:05

下载对象成功后会返回对象的自定义元数据。以下代码展示了如何获取自定义元数据:

  1. // 引入依赖包
  2. import (
  3. "fmt"
  4. "obs"
  5. )
  6.  
  7. var ak = "*** Provide your Access Key ***"
  8. var sk = "*** Provide your Secret Key ***"
  9. var endpoint = "https://your-endpoint"
  10.  
  11. // 创建ObsClient结构体
  12. var obsClient, _ = obs.New(ak, sk, endpoint)
  13.  
  14. func main() {
  15.  
  16. // 上传对象,设置自定义元数据
  17. putObjectInput := &obs.PutObjectInput{}
  18. putObjectInput.Bucket = "bucketname"
  19. putObjectInput.Key = "objectkey"
  20. putObjectInput.Metadata = map[string]string{"property": "property-value"}
  21. _, err := obsClient.PutObject(putObjectInput)
  22. if err != nil {
  23. panic(err)
  24. }
  25.  
  26. input := &obs.GetObjectInput{}
  27. input.Bucket = "bucketname"
  28. input.Key = "objectkey"
  29. // 下载对象
  30. output, err := obsClient.GetObject(input)
  31. if err == nil {
  32. defer output.Body.Close()
  33. // 获取对象自定义元数据
  34. fmt.Printf("Metadata:%v\n", output.Metadata)
  35. } else if obsError, ok := err.(obs.ObsError); ok {
  36. fmt.Printf("Code:%s\n", obsError.Code)
  37. fmt.Printf("Message:%s\n", obsError.Message)
  38. }
  39. }

父主题:下载对象