我使用setInterval
和ajax调用来检查每分钟的新消息。此调用扩展了身份验证cookie(因为我将slidingExpiration设置为true),因此身份验证永不过期。
This question有类似的问题,但解决方案是针对.net项目,我看不出如何将它应用到我的MVC项目中。
如果一个解决方案采用像[DoNotExtendAuthentication]
这样的属性形式,我可以拍摄一个动作,那将是很好的,但任何帮助都会受到赞赏。
答案 0 :(得分:4)
public class DoNotExtendAuthenticationAttribute : ActionFilterAttribute
{
public override void OnResultExecuted(ResultExecutedContext filterContext)
{
filterContext.HttpContext.Response.Cookies.Remove(
FormsAuthentication.FormsCookieName
);
}
}
然后:
[Authorize]
[DoNotExtendAuthentication]
public ActionResult SomeAction()
{
...
}