Documentation ¶
Overview ¶
Package postgres for session provider
depends on github.com/lib/pq:
go install github.com/lib/pq
needs this table in your database:
CREATE TABLE session ( session_key char(64) NOT NULL, session_data bytea, session_expiry timestamp NOT NULL, CONSTRAINT session_key PRIMARY KEY(session_key) );
will be activated with these settings in app.conf:
SessionOn = true SessionProvider = postgresql SessionSavePath = "user=a password=b dbname=c sslmode=disable" SessionName = session
Usage: import(
_ "github.com/tianmaotalk/beego/v2/server/web/session/postgresql" "github.com/tianmaotalk/beego/v2/server/web/session"
)
func init() { globalSessions, _ = session.NewManager("postgresql", ``{"cookieName":"gosessionid","gclifetime":3600,"ProviderConfig":"user=pqgotest dbname=pqgotest sslmode=verify-full"}``) go globalSessions.GC() }
Index ¶
- type Provider
- func (mp *Provider) SessionAll() int
- func (mp *Provider) SessionDestroy(sid string) error
- func (mp *Provider) SessionExist(sid string) bool
- func (mp *Provider) SessionGC()
- func (mp *Provider) SessionInit(maxlifetime int64, savePath string) error
- func (mp *Provider) SessionRead(sid string) (session.Store, error)
- func (mp *Provider) SessionRegenerate(oldsid, sid string) (session.Store, error)
- type SessionStore
- func (st *SessionStore) Delete(key interface{}) error
- func (st *SessionStore) Flush() error
- func (st *SessionStore) Get(key interface{}) interface{}
- func (st *SessionStore) SessionID() string
- func (st *SessionStore) SessionRelease(w http.ResponseWriter)
- func (st *SessionStore) Set(key, value interface{}) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Provider ¶
Provider postgresql session provider
func (*Provider) SessionAll ¶
SessionAll count values in postgresql session
func (*Provider) SessionDestroy ¶
SessionDestroy delete postgresql session by sid
func (*Provider) SessionExist ¶
SessionExist check postgresql session exist
func (*Provider) SessionGC ¶
func (mp *Provider) SessionGC()
SessionGC delete expired values in postgresql session
func (*Provider) SessionInit ¶
SessionInit init postgresql session. savepath is the connection string of postgresql.
func (*Provider) SessionRead ¶
SessionRead get postgresql session by sid
type SessionStore ¶
type SessionStore postgres.SessionStore
SessionStore postgresql session store
func (*SessionStore) Delete ¶
func (st *SessionStore) Delete(key interface{}) error
Delete value in postgresql session
func (*SessionStore) Flush ¶
func (st *SessionStore) Flush() error
Flush clear all values in postgresql session
func (*SessionStore) Get ¶
func (st *SessionStore) Get(key interface{}) interface{}
Get value from postgresql session
func (*SessionStore) SessionID ¶
func (st *SessionStore) SessionID() string
SessionID get session id of this postgresql session store
func (*SessionStore) SessionRelease ¶
func (st *SessionStore) SessionRelease(w http.ResponseWriter)
SessionRelease save postgresql session values to database. must call this method to save values to database.
func (*SessionStore) Set ¶
func (st *SessionStore) Set(key, value interface{}) error
Set value in postgresql session. it is temp value in map.