fix session cookies's expirded
Showing
1 changed file
with
9 additions
and
1 deletions
| ... | @@ -61,9 +61,17 @@ func (manager *Manager) SessionStart(w http.ResponseWriter, r *http.Request) (se | ... | @@ -61,9 +61,17 @@ func (manager *Manager) SessionStart(w http.ResponseWriter, r *http.Request) (se |
| 61 | if err != nil || cookie.Value == "" { | 61 | if err != nil || cookie.Value == "" { |
| 62 | sid := manager.sessionId() | 62 | sid := manager.sessionId() |
| 63 | session, _ = manager.provider.SessionRead(sid) | 63 | session, _ = manager.provider.SessionRead(sid) |
| 64 | cookie := http.Cookie{Name: manager.cookieName, Value: url.QueryEscape(sid), Path: "/", HttpOnly: true, MaxAge: int(manager.maxlifetime)} | 64 | cookie := http.Cookie{Name: manager.cookieName, |
| 65 | Value: url.QueryEscape(sid), | ||
| 66 | Path: "/", | ||
| 67 | HttpOnly: true, | ||
| 68 | Secure: true} | ||
| 69 | cookie.Expires = time.Now().Add(time.Duration(manager.maxlifetime) * time.Second) | ||
| 65 | http.SetCookie(w, &cookie) | 70 | http.SetCookie(w, &cookie) |
| 71 | r.AddCookie(&cookie) | ||
| 66 | } else { | 72 | } else { |
| 73 | cookie.Expires = time.Now().Add(time.Duration(manager.maxlifetime) * time.Second) | ||
| 74 | http.SetCookie(w, cookie) | ||
| 67 | sid, _ := url.QueryUnescape(cookie.Value) | 75 | sid, _ := url.QueryUnescape(cookie.Value) |
| 68 | session, _ = manager.provider.SessionRead(sid) | 76 | session, _ = manager.provider.SessionRead(sid) |
| 69 | } | 77 | } | ... | ... |
-
Please register or sign in to post a comment