u
This commit is contained in:
1 parent
07e0001b87
commit
46cbb2f50d
543 files changed
+32576
-4231
No files matched your search
@@ -3,32 +3,18 @@ package handle
|
||||
import (
|
||||
"allapp-go/internal/errors"
|
||||
"allapp-go/internal/httpx"
|
||||
"allapp-go/internal/types"
|
||||
"allapp-go/pkg/logger"
|
||||
"allapp-go/pkg/s3store"
|
||||
"fmt"
|
||||
"path/filepath"
|
||||
"time"
|
||||
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3"
|
||||
"github.com/gofiber/fiber/v3"
|
||||
"github.com/google/uuid"
|
||||
"go.uber.org/zap"
|
||||
)
|
||||
|
||||
func S3ListBuckets(c fiber.Ctx) error {
|
||||
result, err := s3store.S3Client.ListBuckets(c.Context(), &s3.ListBucketsInput{})
|
||||
if err != nil {
|
||||
return errors.WithStack(err)
|
||||
}
|
||||
|
||||
buckets := make([]string, 0, len(result.Buckets))
|
||||
for _, b := range result.Buckets {
|
||||
if b.Name != nil {
|
||||
buckets = append(buckets, *b.Name)
|
||||
}
|
||||
}
|
||||
|
||||
return httpx.OK(c, buckets)
|
||||
}
|
||||
|
||||
func S3UploadFile(c fiber.Ctx) error {
|
||||
form, err := c.MultipartForm()
|
||||
if err != nil {
|
||||
@@ -64,8 +50,8 @@ func S3UploadFile(c fiber.Ctx) error {
|
||||
|
||||
err = s3store.UploadToRustFS(
|
||||
c.Context(),
|
||||
key,
|
||||
file,
|
||||
key,
|
||||
fileHeader.Size,
|
||||
contentType,
|
||||
)
|
||||
@@ -81,3 +67,23 @@ func S3UploadFile(c fiber.Ctx) error {
|
||||
|
||||
return httpx.OK(c, result)
|
||||
}
|
||||
|
||||
func S3DeleteFile(c fiber.Ctx) error {
|
||||
var req types.S3DeleteReq
|
||||
|
||||
if err := httpx.BindAndValidate(c, &req); err != nil {
|
||||
return errors.WithStack(err)
|
||||
}
|
||||
|
||||
log := logger.FromCtx(c.Context())
|
||||
|
||||
if err := s3store.DeleteBatch(c.Context(), req.Keys); err != nil {
|
||||
log.Warn("S3 批量删除失败",
|
||||
zap.Int("count", len(req.Keys)),
|
||||
zap.Error(err),
|
||||
)
|
||||
// ❗仍然返回成功(符合你的要求)
|
||||
}
|
||||
|
||||
return httpx.OK(c, nil)
|
||||
}
|
||||
Reference in new issue
Block a user