cookie
import (
"github.com/gin-gonic/gin"
)
func main(){
router := gin.Default()
//设置cookie http://127.0.0.1:8080/setcookie
router.GET("/setcookie", func(ctx *gin.Context) {
ctx.SetCookie("key","value",0,"","",false,true)
ctx.Writer.WriteString("test cookie ...")
})
//获取cookie http://127.0.0.1:8080/getcookie
router.GET("/getcookie", func(ctx *gin.Context) {
s,_ :=ctx.Cookie("key")
ctx.Writer.WriteString("mytest:"+s)
})
router.Run(":8888")
}
session (存于redis数据库)
包:
import (
"github.com/gin-contrib/sessions"
"github.com/gin-contrib/sessions/redis"
"github.com/gin-gonic/gin"
)
func main() {
router := gin.Default()
//创建容器 1234为密钥
srore,_ := redis.NewStore(10,"tcp","127.0.0.1:6379","",[]byte("1234"))
router.Use(sessions.Sessions("mytestsession",srore))
//存session
router.GET("/setsession", func(ctx *gin.Context) {
s := sessions.Default(ctx)
s.Set("key","value")
s.Save()
})
//取session
router.GET("/getsession", func(ctx *gin.Context) {
s := sessions.Default(ctx)
v :=s.Get("key")
ctx.Writer.WriteString("get session:"+v.(string))
})
//删session
router.GET("/deletesession", func(ctx *gin.Context) {
s := sessions.Default(ctx)
s.Delete("key")
s.Save()
})
router.Run(":8888")
}