是否存在用於處理未登錄用戶但通過手動輸入URL來嘗試進入網頁的用戶的錯誤代碼?「未登錄」或頁面重定向的錯誤代碼
當前我的web應用程序將用戶重定向到登錄頁面,但我想知道是否有更好的方法來處理頁面重定向到web.config中的錯誤頁面。
編輯:在web.config中
Forms
標籤:
<forms name=".ADAuthCookie" loginUrl="Login.aspx" defaultUrl="~/dataRefresh.aspx" timeout="20" />
是否存在用於處理未登錄用戶但通過手動輸入URL來嘗試進入網頁的用戶的錯誤代碼?「未登錄」或頁面重定向的錯誤代碼
當前我的web應用程序將用戶重定向到登錄頁面,但我想知道是否有更好的方法來處理頁面重定向到web.config中的錯誤頁面。
編輯:在web.config中
Forms
標籤:
<forms name=".ADAuthCookie" loginUrl="Login.aspx" defaultUrl="~/dataRefresh.aspx" timeout="20" />
你需要在你的Global.asax.cs,在Application_EndRequest事件處理
您將需要創建一個處理EndRequest事件的HttpModule並執行以下處理噝聲:
if(Response.StatusCode == 401)
{
// add code to redirect to the access denied page
}
你的HttpModule將需要在UrlAuthorizationModule前進行註冊,以便你可以做重定向的UrlAuthorizationModule做了自己之前。
這將對錶單身份驗證通常會路由到登錄頁面的所有請求執行此操作。
如果*未經過身份驗證*是爲了在您的應用程序中出現錯誤,那麼您可以簡單地編輯登錄頁面以顯示該錯誤。我假設你正在尋找類似「拒絕訪問」的消息? – Yuck 2012-02-21 02:06:04
@Yuck是的,我正在尋找一個解決方案來重定向用戶顯示錯誤消息,而不是登錄頁面。我在web.config中的我的'forms'標籤上編輯了我的帖子。 – gymcode 2012-02-21 02:15:55
保持在一個有效的用戶可能已經書籤一個頁面,並在他們的登錄過期後訪問它。如果你不轉發他們到登錄頁面,一定要做一些有意義的事情。 – 2012-02-21 02:27:56