是否有刷新或重新生成HttpContext.Session.SessionID
的方法?刷新或重新生成HttpContext.Session.SessionID
我正在使用此(瀏覽器)SessionID來跟蹤客戶註冊某個產品。
我使用此ID來跟蹤他們在頁面上的移動和錯誤以及進度。
用戶註冊後,我想刷新會話ID,讓他們在理論上註冊兩次。
但我需要新的身份證以使其成爲新的獨立註冊。
是否有刷新或重新生成HttpContext.Session.SessionID
的方法?刷新或重新生成HttpContext.Session.SessionID
我正在使用此(瀏覽器)SessionID來跟蹤客戶註冊某個產品。
我使用此ID來跟蹤他們在頁面上的移動和錯誤以及進度。
用戶註冊後,我想刷新會話ID,讓他們在理論上註冊兩次。
但我需要新的身份證以使其成爲新的獨立註冊。
你可以使用:
Session.Abandon();
這裏是我做的,它會產生一個新的會話ID:
protected void Page_Load(object sender, EventArgs e)
{
lblSession.Text = Session.SessionID;
}
protected void Button1_Click(object sender, EventArgs e)
{
Session.Abandon();
}
如果您放棄會話,那麼下一個頁面請求將獲得一個新的會話ID。
這不會刷新SessionID – Pinch
我以爲我試過讓我第二次去它..休息。 – Pinch
不,保持不變:var q = HttpContext.Session.SessionID; HttpContext.Session.Abandon(); var q1 = HttpContext.Session.SessionID; HttpContext.Session.Abandon(); var q2 = HttpContext.Session.SessionID; HttpContext.Session.Abandon(); var q3 = HttpContext.Session.SessionID; HttpContext.Session.Abandon(); – Pinch
爲了什麼目的?這聽起來像是需要退後一步並解決實際問題的典型例子,而不是繼續嘗試你認爲應該是解決方案的方法。 – David
@David更新即將到來 – Pinch
我不明白「刷新會話ID」會讓用戶「註冊兩次」,或者如何避免這種情況。什麼「報名」涉及?這聽起來像你應該集中精力的地方。如果這個「註冊」過程與會話ID緊密耦合,那麼它應該與它解耦。使用您可以控制的標識符。 – David