Session is a session middleware for Tango.
Currently session support some backends below:
go get gitea.com/tango/session
package main
import (
"gitea.com/lunny/tango"
"gitea.com/tango/session"
)
type SessionAction struct {
session.Session
}
func (a *SessionAction) Get() string {
a.Session.Set("test", "1")
return a.Session.Get("test").(string)
}
func main() {
o := tango.Classic()
o.Use(session.New(session.Options{
MaxAge:time.Minute * 20,
}))
o.Get("/", new(SessionAction))
}
For other store,
func main() {
o := tango.Classic()
o.Use(session.New(session.Options{
MaxAge:time.Minute * 20,
Store: redistore.New(Options{
Host: "127.0.0.1",
DbIndex: 0,
MaxAge: 30 * time.Minute,
},
}))
o.Get("/", new(SessionAction))
}