From cae7f365319160cbe3c3fade3d5c03e04cc54b1a Mon Sep 17 00:00:00 2001 From: Xhofe Date: Wed, 23 Feb 2022 19:16:33 +0800 Subject: [PATCH] :sparkler: refresh one folder --- server/controllers/file/refresh.go | 30 ++++++++++++++++++++++++++++++ server/router.go | 1 + 2 files changed, 31 insertions(+) create mode 100644 server/controllers/file/refresh.go diff --git a/server/controllers/file/refresh.go b/server/controllers/file/refresh.go new file mode 100644 index 00000000..84787cc4 --- /dev/null +++ b/server/controllers/file/refresh.go @@ -0,0 +1,30 @@ +package file + +import ( + "github.com/Xhofe/alist/drivers/base" + "github.com/Xhofe/alist/server/common" + "github.com/gin-gonic/gin" +) + +type RefreshReq struct { + Path string `json:"path"` +} + +func RefreshFolder(c *gin.Context) { + var req RefreshReq + if err := c.ShouldBind(&req); err != nil { + common.ErrorResp(c, err, 400) + return + } + account, path_, _, err := common.ParsePath(req.Path) + if err != nil { + common.ErrorResp(c, err, 500) + return + } + err = base.DeleteCache(path_, account) + if err != nil { + common.ErrorResp(c, err, 500) + return + } + common.SuccessResp(c) +} diff --git a/server/router.go b/server/router.go index 77aade76..ae8fc262 100644 --- a/server/router.go +++ b/server/router.go @@ -58,6 +58,7 @@ func InitApiRouter(r *gin.Engine) { admin.POST("/move", file.Move) admin.POST("/copy", file.Copy) admin.POST("/folder", file.Folder) + admin.POST("/refresh", file.RefreshFolder) } WebDav(r) Static(r)