如果用戶通過身份驗證,我正在通過$.post
函數進行檢查。如果不是,我想將他重定向到登錄頁面,並將當前的URL放入?RedirectUrl=
參數中(與FormsAuthentication.RedirectToLoginPage()
一樣)。熱做到這一點?通過JQuery或一些.net方法?MVC 3如何手動創建重定向網址?
0
A
回答
1
您可以創建自定義AuthorizeUser屬性並重寫HandleUnauthorizeUser(..)。
然後,您可以驗證請求是否是ajax請求,然後返回具有適當值的jsonresult,這可以通過javascript在視圖中讀取。
嘗試下面的代碼。(我還沒有測試)
public class CustomAuthorizeUserAttribute:AuthorizeAttribute
{
protected override void HandleUnauthorizedRequest(AuthorizationContext filterContext)
{
if (filterContext.HttpContext.Request.IsAjaxRequest())
{
var result = new JsonResult();
result.Data = new
{
responseCode = 401,
loginUrl = FormsAuthentication.LoginUrl
};
filterContext.Result = result;
}
else
{
base.HandleUnauthorizedRequest(filterContext);
}
}
}
在控制器動作用它代替[授權]屬性的。
1
,如果他不是你可以返回RedirectResult
,如果不爲你工作,我建議你在服務器端生成的重定向URL,並通過JSON
相關問題
- 1. 如何創建動態301重定向網址
- 2. 網址自動重定向
- 3. 如何將動態網址重定向到靜態網址?
- 4. asp.net mvc 3 - 重定向到外部網址增加+
- 5. 創建自定義幫手Asp.net MVC 3
- 6. 如何創建重定向?
- 7. 短網址系統:如何重定向自定義網址?
- 8. 重複重定向網址
- 9. 網址重寫/重定向
- 10. 網址幫手完整網址在asp.net MVC-3
- 11. 如何網址重定向htaccess的
- 12. 如何獲取重定向的網址?
- 13. WordPress的如何重定向網址
- 14. 如何重定向頁面網址?
- 15. 如何網址重定向IIS
- 16. Blogger.com重定向網址 - 如何?
- 17. Ajax submit重定向MVC 3
- 18. 重定向舊網址到新網址
- 19. 301重定向動態網址
- 20. Htaccess 301動態網址重定向
- 21. htaccess的動態網址重定向
- 22. 301使用動態網址重定向
- 23. .htaccess使用動態網址重定向
- 24. 自動重定向到手機網站
- 25. 如何將所有網址重定向到不同的網址?
- 26. 如何重定向舊網址到新網址的Django 1.9
- 27. 如何從一組網址重定向到另一個網址?
- 28. 如何重定向301我的舊網址到新網址
- 29. Mod_rewrite - 如何將舊網址重定向到新網址
- 30. 如何使用mvc 3 aspx引擎創建動態網格?
+1優雅的解決方案。但是,也許401是更合適的響應代碼。 – HackedByChinese 2012-02-25 16:47:54
是的,401用於未授權訪問。我會編輯它。 – Manas 2012-02-25 16:48:37