的要求是:會話清除強制用戶會話在Windows身份驗證後清零重新登錄 - ASP.Net
後,向用戶發送回主頁,並迫使他們使用Windows重新登錄驗證提示。
現狀:
我有一個JavaScript倒數計時器,當它擊中0,發送警報說會話結束。我希望能夠做的是無論是通過JavaScript或回發到服務器是什麼,明確用戶的憑據
我讀過/試過:
AJAX後到服務器設置HttpContext.Response,並投擲一個HttpException(401)
[HttpPost]
public ActionResult ForceRelogin()
{
//HttpContext.Response.StatusCode = 401;
//HttpContext.Response.End();
//return RedirectToAction("Index", "Home");
//throw new HttpException(401, "");
return new HttpStatusCodeResult(HttpStatusCode.Unauthorized);
}
的這些似乎都沒有用AJAX來工作,我不能確定如何使普通郵寄回控制器的行動,不涉及提交。
問:
如何強制用戶重新進行身份驗證其Windows身份驗證憑據,而不使用Active-X或改變他們的IE設置?獎金問題:如何在不使用提交或AJAX的情況下從javascript回發到MVC控制器操作?
我不知道MVC如此mutch,但你有沒有嘗試做[HttpStatusCodeResult] (http://msdn.microsoft.com/en-us/library/system.web.mvc.httpstatuscoderesult(v=vs.98).aspx)與401(未授權)? – 2013-05-08 15:58:04
我有,只是再試一次沒有效果。我在想,我的問題的一部分是,我正在做一個AJAX調用,它正在吃掉我拋出的任何異常。顯然,我還沒有看到這項工作,所以它可能是我做錯了什麼。 – DeiasR 2013-05-08 16:08:48
只是爲了確定。您試圖返回HttpStatusCodeResult,而不是在巡迴示例中拋出異常,對吧?如果是的話,也許你可以在你的js回調中驗證狀態碼。如果它是401重定向到登錄也許「做詭計」。 – 2013-05-08 16:16:34