modulepackage
3.0.0+incompatible
Repository: https://github.com/go-session/gear-session.git
Documentation: pkg.go.dev
# README
Session middleware for Gear
Quick Start
Download and install
$ go get -u -v github.com/go-session/gear-session
Create file server.go
package main
import (
"fmt"
"net/http"
"github.com/go-session/gear-session"
"github.com/teambition/gear"
"github.com/go-session/session"
)
func main() {
app := gear.New()
app.Use(gearsession.New())
router := gear.NewRouter()
router.Get("/", func(ctx *gear.Context) error {
store := gearsession.FromContext(ctx)
store.Set("foo", "bar")
err := store.Save()
if err != nil {
return gear.ErrInternalServerError.From(err)
}
return ctx.Redirect("/foo")
})
router.Get("/foo", func(ctx *gear.Context) error {
store := gearsession.FromContext(ctx)
foo, ok := store.Get("foo")
if !ok {
return gear.ErrNotFound
}
return ctx.End(http.StatusOK, []byte(fmt.Sprintf("foo:%s", foo)))
})
app.UseHandler(router)
app.Listen(":8080")
}
Build and run
$ go build server.go
$ ./server
Open in your web browser
foo:bar
MIT License
Copyright (c) 2018 Lyric
# Functions
Destroy a session.
FromContext get session storage from context.
New create a session middleware.
Refresh a session and return to session storage.