func (m *SessionMiddleware) ProcessResponse(env *context.Env) error { if env.Session == nil { return fmt.Errorf("no session exist") } env.Session.Expire(m.config.CookieMaxAge) if err := env.Session.Save(); err != nil { return err } id, err := EncodeSignID(env.Session.ID(), m.config.secretKey) if err != nil { return err } c := &http.Cookie{ Name: m.config.CookieName, Value: id, Path: m.config.CookiePath, MaxAge: m.config.CookieMaxAge, Secure: m.config.CookieSecure, HttpOnly: m.config.CookieHttpOnly, } env.SetCookie(c) return nil }