session

package
v0.0.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 29, 2021 License: MIT Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	SIDNotFoundError error
)

Functions

func Register

func Register(name string, provide Provider)

Types

type Manager

type Manager struct {
	// contains filtered or unexported fields
}

func NewManager

func NewManager(provideName, cookieName string, maxLifeTime int64) (*Manager, error)

func (*Manager) GC

func (manager *Manager) GC()

func (*Manager) SessionDestroy

func (manager *Manager) SessionDestroy(w http.ResponseWriter, r *http.Request)

func (*Manager) SessionQuery

func (manager *Manager) SessionQuery(r *http.Request) (store Store)

func (*Manager) SessionStart

func (manager *Manager) SessionStart(w http.ResponseWriter, r *http.Request) (store Store)

type MemoryProvider

type MemoryProvider struct {
	// contains filtered or unexported fields
}

func GetMemoryProvider

func GetMemoryProvider() *MemoryProvider

func (*MemoryProvider) SessionDestroy

func (mP *MemoryProvider) SessionDestroy(id string) error

func (*MemoryProvider) SessionGC

func (mP *MemoryProvider) SessionGC(maxLifeTime int64)

func (*MemoryProvider) SessionInit

func (mP *MemoryProvider) SessionInit(id string) (Store, error)

func (*MemoryProvider) SessionRead

func (mP *MemoryProvider) SessionRead(id string) (Store, error)

func (*MemoryProvider) SessionUpdate

func (mP *MemoryProvider) SessionUpdate(id string) error

type MemoryStore

type MemoryStore struct {
	// contains filtered or unexported fields
}

func (*MemoryStore) Clear

func (s *MemoryStore) Clear(key interface{}) error

func (*MemoryStore) Get

func (s *MemoryStore) Get(key interface{}) interface{}

func (*MemoryStore) GetMap

func (s *MemoryStore) GetMap() map[interface{}]interface{}

func (*MemoryStore) SessionID

func (s *MemoryStore) SessionID() string

func (*MemoryStore) Set

func (s *MemoryStore) Set(key, value interface{}) error

type Provider

type Provider interface {
	SessionInit(sid string) (Store, error)
	SessionRead(sid string) (Store, error)
	SessionUpdate(sid string) error // for fast GC and query
	SessionDestroy(sid string) error
	SessionGC(maxLifeTime int64)
}

type Store

type Store interface {
	Set(key, value interface{}) error
	Get(key interface{}) interface{}
	Clear(key interface{}) error
	SessionID() string
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL