Documentation
¶
Overview ¶
Package sessions contains middleware for easy session management in Negroni. Based on github.com/martini-contrib/sessions
package main
import (
"github.com/urfave/negroni"
"github.com/goincremental/negroni-sessions"
"net/http"
)
func main() {
n := negroni.Classic()
store := sessions.NewCookieStore([]byte("secret123"))
n.Use(sessions.Sessions("my_session", store))
mux := http.NewServeMux()
mux.HandleFunc("/", func(w http.ResponseWriter, req *http.Request) {
session := sessions.GetSession(req)
session.Set("hello", "world")
})
}
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ( ErrInvalidId = errors.New("session: invalid session id") ErrInvalidModified = errors.New("mongostore: invalid modified value") )
Functions ¶
Types ¶
type Options ¶
type Options struct {
Path string
Domain string
// MaxAge=0 means no 'Max-Age' attribute specified.
// MaxAge<0 means delete cookie now, equivalently 'Max-Age: 0'.
// MaxAge>0 means Max-Age attribute present and given in seconds.
MaxAge int
Secure bool
HTTPOnly bool
}
Options stores configuration for a session or session store.
Fields are a subset of http.Cookie fields.
type Session ¶
type Session interface {
// Get returns the session value associated to the given key.
Get(key interface{}) interface{}
// Set sets the session value associated to the given key.
Set(key interface{}, val interface{})
// Delete removes the session value associated to the given key.
Delete(key interface{})
// Clear deletes all values in the session.
Clear()
// AddFlash adds a flash message to the session.
// A single variadic argument is accepted, and it is optional: it defines the flash key.
// If not defined "_flash" is used by default.
AddFlash(value interface{}, vars ...string)
// Flashes returns a slice of flash messages from the session.
// A single variadic argument is accepted, and it is optional: it defines the flash key.
// If not defined "_flash" is used by default.
Flashes(vars ...string) []interface{}
// Options sets confuguration for a session.
Options(Options)
}
Session stores the values and optional configuration for a session.
func GetSession ¶
GetSession returns the session stored in the request context
type TokenGetSetter ¶
type TokenGetSetter interface {
GetToken(req *http.Request, name string) (string, error)
SetToken(rw http.ResponseWriter, name, value string, options *sessions.Options)
}
TokenGetSetter allows you to save and retrieve a value stored in a cookie
func NewCookieToken ¶
func NewCookieToken() TokenGetSetter
NewCookieToken returns the default TokenGetSetter
Click to show internal directories.
Click to hide internal directories.