ossclient.go 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. package oss
  2. import (
  3. util "app.yhyue.com/data_processing/common_utils"
  4. "app.yhyue.com/data_processing/common_utils/log"
  5. "fmt"
  6. "github.com/aliyun/aliyun-oss-go-sdk/oss"
  7. "go.uber.org/zap"
  8. "io/ioutil"
  9. "os"
  10. )
  11. var (
  12. ossEndpoint = "oss-cn-beijing-internal.aliyuncs.com" //正式环境用:oss-cn-beijing-internal.aliyuncs.com 测试:oss-cn-beijing.aliyuncs.com
  13. ossAccessKeyId = "LTAI4G5x9aoZx8dDamQ7vfZi"
  14. ossAccessKeySecret = "Bk98FsbPYXcJe72n1bG3Ssf73acuNh"
  15. ossBucketName = "topjy"
  16. ossclient *oss.Client
  17. )
  18. func InitOss() {
  19. client, err := oss.New(ossEndpoint, ossAccessKeyId, ossAccessKeySecret)
  20. if err != nil {
  21. fmt.Println("Error:", err)
  22. os.Exit(-1)
  23. }
  24. ossclient = client
  25. }
  26. func OssGetObject(objectName, id string) string {
  27. util.Catch()
  28. // 获取存储空间。
  29. bucket, err := ossclient.Bucket(ossBucketName)
  30. if err != nil {
  31. return ""
  32. }
  33. // 下载文件到流。
  34. body, err := bucket.GetObject(objectName)
  35. if err != nil {
  36. //log.Info("OssGetObject", zap.String("key", objectName), zap.String("id", id))
  37. //log.Info("OssGetObject", zap.Error(err))
  38. return ""
  39. }
  40. defer body.Close()
  41. data, err := ioutil.ReadAll(body)
  42. if err != nil {
  43. log.Info("OssGetObject", zap.Error(err))
  44. return ""
  45. }
  46. return string(data)
  47. }
  48. func OssObjExists(bname, fid string) bool {
  49. util.Catch()
  50. // 获取存储空间。
  51. bucket, err := ossclient.Bucket(bname)
  52. if err != nil {
  53. fmt.Println("Error:", err)
  54. }
  55. // 判断文件是否存在。
  56. isExist, err := bucket.IsObjectExist(fid)
  57. if err != nil {
  58. fmt.Println("Error:", err)
  59. }
  60. return isExist
  61. }