Files
2026-05-20 16:13:58 +08:00

31 lines
553 B
Go

package file
import (
"context"
"errors"
"fmt"
"mime/multipart"
"stat/common/proxy"
)
type FileObject struct {
File *multipart.FileHeader
}
// PutObject 上传文件
func PutObject(ctx context.Context, apiUrl string, fo *FileObject) (urlstr string, err error) {
if fo.File == nil {
err = errors.New("invalid file")
return
}
file, err := fo.File.Open()
if err != nil {
err = errors.New(fmt.Sprintf("invalid file %+v", err))
return
}
defer file.Close()
urlstr, err = proxy.PutObject(ctx, apiUrl, fo.File.Filename, file)
return
}