package middleware import ( "ckwk/internal/ckwk" "ckwk/internal/dto" "net/http" "github.com/gin-gonic/gin" ) func SessionMiddleware(sm *ckwk.SessionManager) gin.HandlerFunc { return func(ctx *gin.Context) { sessionID := ctx.GetHeader("X-Session-Id") wk, ok := sm.Get(sessionID) if !ok { ctx.JSON(http.StatusUnauthorized, dto.Error(401, "登录过期")) ctx.Abort() return } ctx.Set("wk_instance", wk) ctx.Set("session_id", sessionID) ctx.Next() } }