update comment

This commit is contained in:
landaiqing
2024-09-24 01:15:21 +08:00
parent 5cc4294268
commit 5d86914cb7
8 changed files with 452 additions and 39 deletions

View File

@@ -1,6 +1,7 @@
package utils
import (
"encoding/gob"
"encoding/json"
"github.com/gin-gonic/gin"
"schisandra-cloud-album/global"
@@ -12,12 +13,8 @@ func SetSession(c *gin.Context, key string, data interface{}) error {
global.LOG.Error("SetSession failed: ", err)
return err
}
jsonData, err := json.Marshal(data)
if err != nil {
global.LOG.Error("SetSession failed: ", err)
return err
}
session.Values[key] = jsonData
gob.Register(data)
session.Values[key] = data
err = session.Save(c.Request, c.Writer)
if err != nil {
global.LOG.Error("SetSession failed: ", err)
@@ -25,3 +22,38 @@ func SetSession(c *gin.Context, key string, data interface{}) error {
}
return nil
}
func GetSession(c *gin.Context, key string) interface{} {
session, err := global.Session.Get(c.Request, key)
if err != nil {
global.LOG.Error("GetSession failed: ", err)
return nil
}
jsonData, ok := session.Values[key]
if !ok {
global.LOG.Error("GetSession failed: ", "key not found")
return nil
}
var data interface{}
err = json.Unmarshal(jsonData.([]byte), &data)
if err != nil {
global.LOG.Error("GetSession failed: ", err)
return nil
}
return data
}
func DelSession(c *gin.Context, key string) {
session, err := global.Session.Get(c.Request, key)
if err != nil {
global.LOG.Error("DelSession failed: ", err)
return
}
delete(session.Values, key)
err = session.Save(c.Request, c.Writer)
if err != nil {
global.LOG.Error("DelSession failed: ", err)
return
}
return
}