コード例 #1
0
ファイル: session.go プロジェクト: Cergoo/gol
// Get get session, return sid and value.
func (t *TSession) Get(w http.ResponseWriter, r *http.Request) (id []byte, val interface{}) {
	vcoockie, e := r.Cookie(SID)
	if e != nil {
		return
	}
	sessionData, b := t.Stor.Get(vcoockie.Value).(*tdata)
	// if session deleted or not chek ipProtect then del cookie
	if !b || sessionData == nil || (t.ipProtect && sessionData.ip != strings.SplitN(r.RemoteAddr, ":", 2)[0]) {
		cookie.DelCookie(w, SID)
		return
	}
	return []byte(vcoockie.Value), sessionData.data
}
コード例 #2
0
ファイル: session.go プロジェクト: Cergoo/gol
// Del delete session.
func (t *TSession) Del(w http.ResponseWriter, r *http.Request) {
	vcoockie, e := r.Cookie(SID)
	err.Panic(e)
	t.Stor.Del(vcoockie.Value)
	cookie.DelCookie(w, SID)
}
コード例 #3
0
ファイル: cryptedcookie.go プロジェクト: Cergoo/gol
// DelCookie del cookie
func (t *TBoxCookie) DelCookie(w http.ResponseWriter, name string) {
	cookie.DelCookie(w, name)
}