2009-07-04 108 views

回答

1

編輯

基於您的評論,我會建議通過定製的基本控制器,所有其他的控制器將派生自處理這個。讓自定義基本控制器重寫OnActionExecuting並檢查過期狀態。如果狀態已過期,請從響應中刪除身份驗證Cookie(FormsAuthentication.SignOut),並將ActionExecutingContext參數上的Result屬性設置爲HttpUnauthorizedResult。或者,您可以簡單地重定向到註銷操作。

您還應該確保您的會話超時和表單身份驗證Cookie超時時間相同。

原來的答覆離開上下文

我不知道你問什麼。當服務器會話過期時,Cookie中的身份驗證票證不再有效。任何需要授權的操作(最低限度需要身份驗證)都應該返回一個HttpUnauthorizedResult,默認情況下,它將重定向到Forms登錄頁面。

您是否要求如何在客戶端過期會話,以便客戶端甚至在沒有請求的情況下執行某些操作?如果是這樣,你可能會對如何通過javascript/ajax處理這個問題感興趣。在client-side session termination上看到我的博客文章http://farm-fresh-code.blogspot.com

+0

在這種情況下會話狀態服務會話過期,因此客戶端Cookie仍然有效,我需要過期 – mamu 2009-07-04 15:24:39

+0

我根據您的評論更新了我的回覆。 – tvanfosson 2009-07-04 15:31:20

0

我想你想在用戶註銷後清除瀏覽器歷史記錄。

相關問題