0
我正在使用MVC 5 for ASP.NET。MVC 5授权属性
我想创建一个自定义授权属性。如果存在会话变量,则使用OpenId将用户验证到我的应用程序。我已将[OpenIdAuthorize]添加到我的控制器。当我在登录后查看它们时,我会在我的应用程序中弹回到/ openid/index。会话变量存在。我添加了断点,但他们从未达到过。
public class OpenIdAuthorizeAttribute : System.Web.Mvc.AuthorizeAttribute
{
protected override bool AuthorizeCore(HttpContextBase httpContext)
{
if (httpContext.Session["FriendlyEmail"] == null)
return false;
else
return true;
}
protected override void HandleUnauthorizedRequest(AuthorizationContext filterContext)
{
if(filterContext.HttpContext.Session["FriendlyEmail"] == null)
filterContext.Result = new RedirectResult("/openid/index");
}
}
这里是我的控制器:
[OpenIdAuthorize]
public class RuleSetController : Controller
你覆盖'AuthorizeCore'功能? –
请看我更新的答案。问题依然存在。 –
'AuthorizeCore'函数的任何断点是否受到影响? –