From aa16345a4860cde761a4447f3b5bf8e4bfec8acd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E8=B6=85?= <17805310388@139.com> Date: Tue, 24 Jun 2025 19:34:39 +0800 Subject: [PATCH] =?UTF-8?q?=E6=A8=A1=E6=9D=BF=E8=BF=98=E4=B8=8D=E8=A1=8C?= =?UTF-8?q?=EF=BC=8C=E9=9C=80=E8=A6=81=E6=94=B9=E5=8F=98=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- controllers/users.go | 46 -------- main.go | 9 +- pkg/util/request.go | 44 -------- routers/router.go | 1 - web/themes/default/templates/base.tmpl | 137 ++++++++++++++++++++++++ web/themes/default/templates/index.tmpl | 59 ++-------- 6 files changed, 144 insertions(+), 152 deletions(-) delete mode 100644 pkg/util/request.go create mode 100644 web/themes/default/templates/base.tmpl diff --git a/controllers/users.go b/controllers/users.go index 1e42c20..9d43457 100644 --- a/controllers/users.go +++ b/controllers/users.go @@ -7,7 +7,6 @@ package controllers import ( - "fmt" "go_blog/models" "go_blog/pkg/util" "go_blog/serializers" @@ -30,7 +29,6 @@ func UsersLoginHandler(ctx *gin.Context) { return } - // 验证用户逻辑不变 user := &models.Account{Username: loginUser.Username} if err := models.DB.Where("username = ?", user.Username).First(user).Error; err != nil { ctx.AbortWithStatusJSON(http.StatusBadRequest, gin.H{ @@ -90,50 +88,6 @@ func UsersRegisterHandler(ctx *gin.Context) { ctx.JSON(http.StatusOK, gin.H{"code": http.StatusOK, "msg": "注册成功"}) } -// 修改用户信息 -func UsersSetInfoHandler(ctx *gin.Context) { - - jsonData, err := util.GetBodyData(ctx) - if err != nil { - ctx.AbortWithStatusJSON(http.StatusBadRequest, gin.H{ - "code": http.StatusBadRequest, - "msg": "参数解析失败", - }) - return - } - fmt.Println(jsonData) - if jsonData == nil { - ctx.AbortWithStatusJSON(http.StatusBadRequest, gin.H{ - "code": http.StatusBadRequest, - "msg": "获取不到参数", - }) - return - } - // 从上下文中获取用户(假设 JWT 中间件已将用户存入 "user" 键) - user, exists := ctx.Get("user") - if !exists { - ctx.AbortWithStatusJSON(http.StatusUnauthorized, gin.H{ - "code": http.StatusUnauthorized, - "msg": "未登录", - }) - return - } - currentUser, ok := user.(*models.Account) // 明确类型为 models.Account - if !ok { - ctx.AbortWithStatusJSON(http.StatusInternalServerError, gin.H{ - "code": http.StatusInternalServerError, - "msg": "用户类型错误", - }) - return - } - - models.DB.Model(currentUser).Updates(jsonData) - ctx.JSON(http.StatusOK, gin.H{ - "code": http.StatusOK, - "msg": "更新成功", - }) -} - // 修改密码 func UsersSetPwdHandler(ctx *gin.Context) { diff --git a/main.go b/main.go index e99056c..be0545f 100644 --- a/main.go +++ b/main.go @@ -29,11 +29,6 @@ func main() { } slog.Info("配置加载成功", "config", conf) // 2. 初始化日志系统 - // if err := logger.Initialize(cfg.Log); err != nil { - // slog.Error("日志初始化失败", "error", err) - // os.Exit(1) - // } - // defer logger.Flush() logger := slog.New(slog.NewJSONHandler(os.Stdout, nil)) slog.SetDefault(logger) slog.SetLogLoggerLevel(slog.LevelDebug) @@ -74,7 +69,7 @@ func main() { gin.Logger(), gin.Recovery(), databaseMiddleware(models.DB), - //configMiddleware(cfg), + configMiddleware(conf), themeMiddleware(themeManager), sessions.Sessions("blog-session", store), ) @@ -113,9 +108,7 @@ func themeMiddleware(manager *themes.ThemeManager) gin.HandlerFunc { func loggerMiddleware() gin.HandlerFunc { return func(c *gin.Context) { start := time.Now() - c.Next() - duration := time.Since(start) slog.Info("请求处理完成", "status", c.Writer.Status(), diff --git a/pkg/util/request.go b/pkg/util/request.go deleted file mode 100644 index 8199f7d..0000000 --- a/pkg/util/request.go +++ /dev/null @@ -1,44 +0,0 @@ -/* -@Time : 2020/6/29 14:40 -@Author : xuyiqing -@File : body.py -*/ - -package util - -import ( - "encoding/json" - "fmt" - "github.com/gin-gonic/gin" - "io" - "strings" -) - -// 反序列化request.body中的json数据为map -func GetBodyData(ctx *gin.Context) (map[string]interface{}, error) { - bdata := make([]byte, 1024) - length, err := ctx.Request.Body.Read(bdata) - if err != nil && err != io.EOF { - return nil, err - } - var data map[string]interface{} - str := string(bdata[:length]) - decoder := json.NewDecoder(strings.NewReader(str)) - decoder.UseNumber() - err1 := decoder.Decode(&data) - if err1 != nil { - return nil, err - } - return data, nil -} - -// 构建文件url连接主机端口全链接 "https://192.168.11.121:7889/meida/upload/..." -func BuildAbsoluteUri(ctx *gin.Context, filePath string) string { - host := ctx.Request.Host - schema := ctx.Request.Header.Get("X-Forwarded-Proto") - if schema == "https" { - return fmt.Sprintf("https://%s/%s", host, filePath) - } else { - return fmt.Sprintf("http://%s/%s", host, filePath) - } -} diff --git a/routers/router.go b/routers/router.go index 24b4199..728dd7d 100644 --- a/routers/router.go +++ b/routers/router.go @@ -178,7 +178,6 @@ func RegisterRoutes(r *gin.Engine) { authAdmin.GET("/index", controllers.ShowAdminIndexPage) authAdmin.GET("/themes", controllers.ListThemes) authAdmin.POST("/themes/switch", controllers.SwitchTheme) - authAdmin.POST("/setinfo", controllers.UsersSetInfoHandler) authAdmin.POST("/setpwd", controllers.UsersSetPwdHandler) admin.GET("/logout", controllers.UsersLogoutHandler) // 添加退出路由 } diff --git a/web/themes/default/templates/base.tmpl b/web/themes/default/templates/base.tmpl new file mode 100644 index 0000000..c0b3d57 --- /dev/null +++ b/web/themes/default/templates/base.tmpl @@ -0,0 +1,137 @@ + + +
+