signout
This commit is contained in:
@@ -128,7 +128,7 @@ func SessionsItemDelete(w http.ResponseWriter, r *http.Request) {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
// 獲取當前session
|
// 獲取當前 session
|
||||||
session := models.Session{ID: cookie.Value}
|
session := models.Session{ID: cookie.Value}
|
||||||
if err := configs.ORMDB().Find(&session).Error; err != nil {
|
if err := configs.ORMDB().Find(&session).Error; err != nil {
|
||||||
w.WriteHeader(http.StatusUnauthorized)
|
w.WriteHeader(http.StatusUnauthorized)
|
||||||
@@ -158,6 +158,13 @@ func SessionsItemDelete(w http.ResponseWriter, r *http.Request) {
|
|||||||
w.Write([]byte("404 - Not Found"))
|
w.Write([]byte("404 - Not Found"))
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 如果目标 ssession_id 和当前 session_id 相同, 则清除 Cookie
|
||||||
|
if sessionx.ID == session.ID {
|
||||||
|
cookie := http.Cookie{Name: "session_id", Value: "", Path: "/", HttpOnly: true, MaxAge: -1}
|
||||||
|
http.SetCookie(w, &cookie)
|
||||||
|
}
|
||||||
|
|
||||||
w.Header().Set("Content-Type", "application/json; charset=utf-8")
|
w.Header().Set("Content-Type", "application/json; charset=utf-8")
|
||||||
w.Write(utils.ToJSON(sessionx))
|
w.Write(utils.ToJSON(sessionx))
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user