minioUploadHandler.go 870 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. // Code scaffolded by goctl. Safe to edit.
  2. // goctl 1.10.1
  3. package minio
  4. import (
  5. "net/http"
  6. "perms-system-server/internal/logic/minio"
  7. "perms-system-server/internal/svc"
  8. "github.com/zeromicro/go-zero/rest/httpx"
  9. )
  10. func MinioUploadHandler(svcCtx *svc.ServiceContext) http.HandlerFunc {
  11. return func(w http.ResponseWriter, r *http.Request) {
  12. if err := r.ParseMultipartForm(32 << 20); err != nil {
  13. httpx.ErrorCtx(r.Context(), w, err)
  14. return
  15. }
  16. file, fileHeader, err := r.FormFile("file")
  17. if err != nil {
  18. httpx.ErrorCtx(r.Context(), w, err)
  19. return
  20. }
  21. defer file.Close()
  22. fileType := r.FormValue("fileType")
  23. l := minio.NewMinioUploadLogic(r.Context(), svcCtx)
  24. result, err := l.MinioUpload(fileHeader, file, fileType)
  25. if err != nil {
  26. httpx.ErrorCtx(r.Context(), w, err)
  27. return
  28. }
  29. httpx.OkJsonCtx(r.Context(), w, result)
  30. }
  31. }