Browse Source

提交代码。

Signed-off-by: zouap <zouap@pcl.ac.cn>
pull/3226/head
zouap 2 years ago
parent
commit
08ad1679e8
1 changed files with 14 additions and 12 deletions
  1. +14
    -12
      routers/repo/attachment.go

+ 14
- 12
routers/repo/attachment.go View File

@@ -312,7 +312,8 @@ func GetAttachment(ctx *context.Context) {
url = setting.PROXYURL + "/obs_proxy_download?uuid=" + attach.UUID + "&file_name=" + attach.Name
log.Info("return url=" + url)
} else {
url, err = storage.ObsGetPreSignedUrl(attach.UUID, attach.Name)
objectName := strings.TrimPrefix(path.Join(setting.BasePath, path.Join(attach.UUID[0:1], attach.UUID[1:2], attach.UUID, attach.Name)), "/")
url, err = storage.ObsGetPreSignedUrl(objectName, attach.Name)
if err != nil {
ctx.ServerError("ObsGetPreSignedUrl", err)
return
@@ -684,9 +685,9 @@ func GetSuccessChunks(ctx *context.Context) {
}
}

func getMinioInitObjectName(scene string, uuid string, filename string) string {
func getMinioInitObjectName(scene string, uuid, modeluuid string, filename string) string {
if scene == Attachment_model {
return strings.TrimPrefix(path.Join(Model_prefix, path.Join(uuid[0:1], uuid[1:2], uuid, filename)), "/")
return strings.TrimPrefix(path.Join(Model_prefix, path.Join(modeluuid[0:1], modeluuid[1:2], modeluuid, filename)), "/")
} else {
return strings.TrimPrefix(path.Join(setting.Attachment.Minio.BasePath, path.Join(uuid[0:1], uuid[1:2], uuid)), "/")
}
@@ -700,9 +701,9 @@ func getChunkMinioExistObjectName(scene string, fileChunk *models.FileChunk, fil
}
}

func getOBSInitObjectName(scene string, uuid string, filename string) string {
func getOBSInitObjectName(scene string, uuid, modeluuid string, filename string) string {
if scene == Attachment_model {
return strings.TrimPrefix(path.Join(Model_prefix, path.Join(uuid[0:1], uuid[1:2], uuid, filename)), "/")
return strings.TrimPrefix(path.Join(Model_prefix, path.Join(modeluuid[0:1], modeluuid[1:2], modeluuid, filename)), "/")
} else {
return strings.TrimPrefix(path.Join(setting.BasePath, path.Join(uuid[0:1], uuid[1:2], uuid, filename)), "/")
}
@@ -752,20 +753,21 @@ func NewMultipart(ctx *context.Context) {
}

uuid := gouuid.NewV4().String()
modeluuid := ""
if scene == Attachment_model {
uuid = ctx.Query("uuid")
modeluuid = ctx.Query("modeluuid")
}
var uploadID string
var objectName string
if typeCloudBrain == models.TypeCloudBrainOne {
objectName = getMinioInitObjectName(scene, uuid, fileName)
objectName = getMinioInitObjectName(scene, uuid, modeluuid, fileName)
uploadID, err = storage.NewMultiPartUpload(objectName)
if err != nil {
ctx.ServerError("NewMultipart", err)
return
}
} else {
objectName = getOBSInitObjectName(scene, uuid, fileName)
objectName = getOBSInitObjectName(scene, uuid, modeluuid, fileName)
uploadID, err = storage.NewObsMultiPartUpload(objectName)
if err != nil {
ctx.ServerError("NewObsMultiPartUpload", err)
@@ -811,8 +813,8 @@ func PutOBSProxyUpload(ctx *context.Context) {
ctx.Error(500, fmt.Sprintf("FormFile: %v", RequestBody))
return
}
err := storage.ObsMultiPartUpload(uuid, uploadID, partNumber, fileName, RequestBody.ReadCloser())
objectName := strings.TrimPrefix(path.Join(setting.BasePath, path.Join(uuid[0:1], uuid[1:2], uuid, fileName)), "/")
err := storage.ObsMultiPartUpload(objectName, uploadID, partNumber, fileName, RequestBody.ReadCloser())
if err != nil {
log.Info("upload error.")
}
@@ -821,8 +823,8 @@ func PutOBSProxyUpload(ctx *context.Context) {
func GetOBSProxyDownload(ctx *context.Context) {
uuid := ctx.Query("uuid")
fileName := ctx.Query("file_name")
body, err := storage.ObsDownload(uuid, fileName)
objectName := strings.TrimPrefix(path.Join(setting.BasePath, path.Join(uuid[0:1], uuid[1:2], uuid, fileName)), "/")
body, err := storage.ObsDownloadAFile(setting.Bucket, objectName)
if err != nil {
log.Info("upload error.")
} else {


Loading…
Cancel
Save