如何从angularjs中的MVC授权重定向到另一个页面
我是angularjs新手,正在使用angularjs开发asp.net MVC。我正在使用angularjs状态重定向另一个页面。当我从OnAuthorization重定向到login页面时,MVC登录页面呈现在当前页面中,而不是单独的页面中如何从angularjs中的MVC授权重定向到另一个页面,angularjs,model-view-controller,authorization,Angularjs,Model View Controller,Authorization,我是angularjs新手,正在使用angularjs开发asp.net MVC。我正在使用angularjs状态重定向另一个页面。当我从OnAuthorization重定向到login页面时,MVC登录页面呈现在当前页面中,而不是单独的页面中 public override void OnAuthorization(AuthorizationContext filterContext) { if(filterContext.ActionDescriptor.IsDefi
public override void OnAuthorization(AuthorizationContext filterContext)
{
if(filterContext.ActionDescriptor.IsDefined(typeof(AllowAnonymousAttribute), true)
|| filterContext.ActionDescriptor.ControllerDescriptor.IsDefined(typeof(AllowAnonymousAttribute), true))
return;
CurrentUserToken = sessionManager.CurrentUserToken;
if (string.IsNullOrEmpty(CurrentUserToken))
HandleUnauthorizedRequest(filterContext);
}
protected override void HandleUnauthorizedRequest(AuthorizationContext filterContext)
{
if (filterContext.HttpContext.Request.IsAjaxRequest())
{
//string destinationUrl = UrlHelper.GenerateContentUrl("http://localhost:49363/Account/SignIn", filterContext.HttpContext);
//JavaScriptResult result = new JavaScriptResult()
//{
// Script = "window.location='" + destinationUrl + "';"
//};
//result.ExecuteResult(filterContext);
//filterContext.HttpContext.Response.StatusCode = 403; //There is no HTTP status code for session timeout. We are using this code as it stands for "Forbidden" which is closer.
//filterContext.Result = new JsonResult
//{
// JsonRequestBehavior = JsonRequestBehavior.AllowGet,
// Data = new { error = true, httpCode = 403, status = "Error", message = "Session expired. Please relogin." }
//};
var url = new UrlHelper(filterContext.RequestContext);
var verifyEmailUrl = url.Action("SignIn", "Account", null);
filterContext.Result = new RedirectResult(verifyEmailUrl);
// filterContext.Result = new RedirectToRouteResult(new RouteValueDictionary(new { Action = "SignIn", Controller = "Account" }));
}
else
{
filterContext.Result = new RedirectToRouteResult(new RouteValueDictionary(new { Action = "SignIn", Controller = "Account" }));
}
}
请给我一些建议来摆脱这个问题