Browse Source

优化oss的初始化方式

SliverHorn 4 years ago
parent
commit
49a15e27fe

+ 0 - 2
server/core/server.go

@@ -4,7 +4,6 @@ import (
 	"fmt"
 	"gin-vue-admin/global"
 	"gin-vue-admin/initialize"
-	"gin-vue-admin/utils/upload"
 	"go.uber.org/zap"
 	"time"
 )
@@ -18,7 +17,6 @@ func RunWindowsServer() {
 		// 初始化redis服务
 		initialize.Redis()
 	}
-	upload.InitOss() // 初始化oss
 	Router := initialize.Routers()
 	Router.Static("/form-generator", "./resource/page")
 

+ 4 - 2
server/service/exa_file_upload_download.go

@@ -42,7 +42,8 @@ func FindFile(id uint) (error, model.ExaFileUploadAndDownload) {
 func DeleteFile(file model.ExaFileUploadAndDownload) (err error) {
 	var fileFromDb model.ExaFileUploadAndDownload
 	err, fileFromDb = FindFile(file.ID)
-	if err = upload.Oss.DeleteFile(fileFromDb.Key); err != nil{
+	oss := upload.NewOss()
+	if err = oss.DeleteFile(fileFromDb.Key); err != nil{
 		return errors.New("文件删除失败")
 	}
 	err = global.GVA_DB.Where("id = ?", file.ID).Unscoped().Delete(file).Error
@@ -76,7 +77,8 @@ func GetFileRecordInfoList(info request.PageInfo) (err error, list interface{},
 // @return    file            file model.ExaFileUploadAndDownload
 
 func UploadFile(header *multipart.FileHeader, noSave string) (err error, file model.ExaFileUploadAndDownload) {
-	filePath, key, uploadErr := upload.Oss.UploadFile(header)
+	oss := upload.NewOss()
+	filePath, key, uploadErr := oss.UploadFile(header)
 	if uploadErr != nil {
 		panic(err)
 	}

+ 4 - 4
server/utils/upload/upload.go

@@ -12,13 +12,13 @@ type OSS interface {
 	DeleteFile(key string) error
 }
 
-func InitOss() {
+func NewOss() OSS {
 	switch global.GVA_CONFIG.System.OssType {
 	case "local":
-		Oss = &Local{}
+		return &Local{}
 	case "qiniu":
-		Oss = &Qiniu{}
+		return &Qiniu{}
 	default:
-		Oss = &Local{}
+		return &Local{}
 	}
 }