oss.go 844 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. package services
  2. import (
  3. "errors"
  4. "github.com/aliyun/aliyun-oss-go-sdk/oss"
  5. "time"
  6. "eta/eta_report/utils"
  7. )
  8. // UploadAliyunToDir 上传至hzchart
  9. func UploadAliyunToDir(filename, filepath, uploadDir, fileDir string) (string, error) {
  10. if utils.AccessKeyId == `` {
  11. return "0", errors.New("阿里云信息未配置")
  12. }
  13. client, err := oss.New(utils.Endpoint, utils.AccessKeyId, utils.AccessKeySecret)
  14. if err != nil {
  15. return "1", err
  16. }
  17. bucket, err := client.Bucket(utils.Bucketname)
  18. if err != nil {
  19. return "2", err
  20. }
  21. if uploadDir == "" {
  22. uploadDir = utils.UploadDir
  23. }
  24. if fileDir == "" {
  25. fileDir = time.Now().Format("200601/20060102/")
  26. }
  27. path := uploadDir + fileDir
  28. path += filename
  29. err = bucket.PutObjectFromFile(path, filepath)
  30. if err != nil {
  31. return "3", err
  32. }
  33. path = utils.Imghost + path
  34. return path, err
  35. }