zoukankan      html  css  js  c++  java
  • gin操作session

    导入包:go get github.com/gin-contrib/sessions

    package main
    
    import (
            // 导入session包
        "github.com/gin-contrib/sessions"
           // 导入session存储引擎
        "github.com/gin-contrib/sessions/cookie"
            // 导入gin框架包
        "github.com/gin-gonic/gin"
    )
    
    func main() {
        r := gin.Default()
          // 创建基于cookie的存储引擎,secret11111 参数是用于加密的密钥
        store := cookie.NewStore([]byte("secret11111"))
        // 设置session中间件,参数mysession,指的是session的名字,也是cookie的名字
        // store是前面创建的存储引擎,我们可以替换成其他存储引擎
        r.Use(sessions.Sessions("mysession", store))
    
        r.GET("/hello", func(c *gin.Context) {
              // 初始化session对象
            session := sessions.Default(c)
            // 通过session.Get读取session值
            // session是键值对格式数据,因此需要通过key查询数据
            if session.Get("hello") != "world" {
                // 设置session数据
                session.Set("hello", "world")       
                // 删除session数据
                //session.Delete("hello")
                //清空session
                //session.Clear()
                // 保存session数据
                //session.Save()
                // 删除整个session
                // session.Clear()
            }
            //转发到另一个url       
            c.Request.URL.Path = "/hi"
            r.HandleContext(c)
        })
        r.GET("/hi", func(context *gin.Context) {
              // 初始化session对象
            session := sessions.Default(context)
            context.JSON(http.StatusOK,gin.H{
              "session":session.Get("hello"),
            })
        })
      
        r.Run(":8000")
    }

     正在整理笔记,如有雷同,请告知,我必添上!

  • 相关阅读:
    04 SecurityContextHolder与SecurityContext说明
    03 spring security执行流程分析
    02 spring security 自定义用户认证流程
    01 spring security入门篇
    第三周进度
    第二周进度
    一维整数组所有子数组和的最大值
    初入园子,自我介绍
    密码登录源码(jsp+java+数据库)
    第一周总结
  • 原文地址:https://www.cnblogs.com/qzhc/p/13454583.html
Copyright © 2011-2022 走看看