mirror of
https://github.com/schollz/cowyo.git
synced 2023-08-10 21:13:00 +03:00
36 lines
673 B
Go
36 lines
673 B
Go
package main
|
|
|
|
import (
|
|
"github.com/gin-contrib/sessions"
|
|
"github.com/gin-gonic/gin"
|
|
"gopkg.in/mgo.v2"
|
|
)
|
|
|
|
func main() {
|
|
r := gin.Default()
|
|
session, err := mgo.Dial("localhost:27017/test")
|
|
if err != nil {
|
|
// handle err
|
|
}
|
|
|
|
c := session.DB("").C("sessions")
|
|
store := sessions.NewMongoStore(c, 3600, true, []byte("secret"))
|
|
r.Use(sessions.Sessions("mysession", store))
|
|
|
|
r.GET("/incr", func(c *gin.Context) {
|
|
session := sessions.Default(c)
|
|
var count int
|
|
v := session.Get("count")
|
|
if v == nil {
|
|
count = 0
|
|
} else {
|
|
count = v.(int)
|
|
count++
|
|
}
|
|
session.Set("count", count)
|
|
session.Save()
|
|
c.JSON(200, gin.H{"count": count})
|
|
})
|
|
r.Run(":8000")
|
|
}
|