1、安装session第三方中间件
go get github.com/gin-contrib/sessions
2、在入口文件main.go
初始化session
func main() {
route := gin.Default()
//配置session中间件
//创建一个基于cookie的存储引擎,secret参数是用于加密的秘钥,可以自定义
store := cookie.NewStore([]byte("secret"))
//创建一个cookie存储引擎的中间件
route.Use(sessions.Sessions("mysession", store))
}
3、在控制器里面使用session
设置session
// 设置session
func (con TestController) SetMySession(g *gin.Context) {
session := sessions.Default(g)
session.Set("user", "华初")
session.Save()
g.JSON(http.StatusOK, gin.H{
"message": "设置成功",
})
}
获取session
// 设置session
func (con TestController) GetMySession(g *gin.Context) {
session := sessions.Default(g)
user := session.Get("user")
session.Save()
g.JSON(http.StatusOK, gin.H{
"用户名": user,
})
}