oss.go 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. package ul
  2. import (
  3. "bytes"
  4. "fmt"
  5. "github.com/aliyun/aliyun-oss-go-sdk/oss"
  6. "io"
  7. util "jygit.jydev.jianyu360.cn/data_processing/common_utils"
  8. "log"
  9. "os"
  10. )
  11. var (
  12. ossEndpoint = "oss-cn-beijing-internal.aliyuncs.com" //http://oss-cn-beijing.aliyuncs.com"
  13. ossEndpointTest = "oss-cn-beijing.aliyuncs.com"
  14. ossAccessKeyId = "LTAI4G5x9aoZx8dDamQ7vfZi"
  15. ossAccessKeySecret = "Bk98FsbPYXcJe72n1bG3Ssf73acuNh"
  16. ossBucketName = "jy-datadetail"
  17. ossclient *oss.Client
  18. )
  19. func InitOss(isTest bool) {
  20. if isTest {
  21. ossEndpoint = ossEndpointTest //测试服务器~阿里云
  22. }
  23. client, err := oss.New(ossEndpoint, ossAccessKeyId, ossAccessKeySecret)
  24. if err != nil {
  25. log.Println("Error:", err)
  26. os.Exit(-1)
  27. }
  28. ossclient = client
  29. }
  30. func OssGetObject(objectName string) string {
  31. util.Catch()
  32. // 获取存储空间。
  33. bucket, err := ossclient.Bucket(ossBucketName)
  34. if err != nil {
  35. fmt.Println("Error:", err)
  36. return ""
  37. }
  38. // 下载文件到流。
  39. body, err := bucket.GetObject(objectName)
  40. if err != nil {
  41. fmt.Println("Error:", err)
  42. return ""
  43. }
  44. defer body.Close()
  45. data, err := io.ReadAll(body)
  46. if err != nil {
  47. fmt.Println("Error:", err)
  48. return ""
  49. }
  50. return string(data)
  51. }
  52. func OssPutObject(bucketName, objectKey, text string) (bool, error) {
  53. defer util.Catch()
  54. // 获取存储空间。
  55. bucket, err := ossclient.Bucket(bucketName)
  56. if err != nil {
  57. log.Println("Error:", err)
  58. return false, err
  59. }
  60. // 上传文件流。
  61. err = bucket.PutObject(objectKey, bytes.NewReader([]byte(text)))
  62. if err != nil {
  63. log.Println("Error:", err)
  64. return false, err
  65. }
  66. return true, nil
  67. }