From 2cbc641b2df4df73bc5d32ba4be65ce5722513b1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=97=E5=AD=90?= Date: Thu, 31 Oct 2024 12:35:31 +0800 Subject: [PATCH] =?UTF-8?q?feat(=E6=96=87=E4=BB=B6):=20=E4=BC=98=E5=8C=96?= =?UTF-8?q?=E8=A7=A3=E5=8E=8B=EF=BC=8C=E4=BF=9D=E5=AD=98=E6=97=B6=E7=9A=84?= =?UTF-8?q?=E6=9D=83=E9=99=90=E8=AE=BE=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- internal/service/file.go | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/internal/service/file.go b/internal/service/file.go index ff264b3d..6fb87366 100644 --- a/internal/service/file.go +++ b/internal/service/file.go @@ -107,7 +107,6 @@ func (s *FileService) Save(w http.ResponseWriter, r *http.Request) { return } - s.setPermission(req.Path, 0755, "www", "www") Success(w, nil) } @@ -333,12 +332,30 @@ func (s *FileService) UnCompress(w http.ResponseWriter, r *http.Request) { return } + oldList, err := io.ReadDir(req.Path) + if err != nil { + Error(w, http.StatusInternalServerError, "%v", err) + return + } + if err = io.UnCompress(req.File, req.Path); err != nil { Error(w, http.StatusInternalServerError, "%v", err) return } - s.setPermission(req.Path, 0755, "www", "www") + currentList, err := io.ReadDir(req.Path) + if err != nil { + Error(w, http.StatusInternalServerError, "%v", err) + return + } + + // 取新增的设置权限 + for _, currentDir := range currentList { + if !slices.Contains(oldList, currentDir) { + s.setPermission(filepath.Join(req.Path, currentDir.Name()), 0755, "www", "www") + } + } + Success(w, nil) }