diff --git a/internal/rpc/third/s3.go b/internal/rpc/third/s3.go index 84ed90cbd..2b534aefb 100644 --- a/internal/rpc/third/s3.go +++ b/internal/rpc/third/s3.go @@ -129,7 +129,7 @@ func (t *thirdServer) CompleteMultipartUpload(ctx context.Context, req *third.Co return nil, err } return &third.CompleteMultipartUploadResp{ - Url: t.apiAddress(obj.Key), + Url: t.apiAddress(obj.Name), }, nil } diff --git a/pkg/common/db/s3/cos/cos.go b/pkg/common/db/s3/cos/cos.go index b353b0ba2..e1d1b3a49 100644 --- a/pkg/common/db/s3/cos/cos.go +++ b/pkg/common/db/s3/cos/cos.go @@ -41,10 +41,9 @@ func NewCos() (s3.Interface, error) { } type Cos struct { - statObjectURL string - copyURL string - client *cos.Client - credential *cos.Credential + copyURL string + client *cos.Client + credential *cos.Credential } func (c *Cos) Engine() string { @@ -170,7 +169,7 @@ func (c *Cos) StatObject(ctx context.Context, name string) (*s3.ObjectInfo, erro if name != "" && name[0] == '/' { name = name[1:] } - info, err := c.client.Object.Head(ctx, c.statObjectURL+name, nil) + info, err := c.client.Object.Head(ctx, name, nil) if err != nil { return nil, err } @@ -201,7 +200,7 @@ func (c *Cos) StatObject(ctx context.Context, name string) (*s3.ObjectInfo, erro } func (c *Cos) CopyObject(ctx context.Context, src string, dst string) (*s3.CopyObjectInfo, error) { - result, _, err := c.client.Object.Copy(ctx, src, c.copyURL+dst, &cos.ObjectCopyOptions{}) + result, _, err := c.client.Object.Copy(ctx, dst, c.copyURL+src, &cos.ObjectCopyOptions{}) if err != nil { return nil, err }