在ASP.NET中,要清除或过期会话cookie,可以使用以下代码示例来解决问题:
protected void Application_EndRequest(object sender, EventArgs e)
{
var sessionHandler = FederatedAuthentication.SessionAuthenticationModule as SessionAuthenticationModule;
if (sessionHandler != null && sessionHandler.CookieHandler != null)
{
var sessionCookie = sessionHandler.CookieHandler.GetCookieName();
if (!string.IsNullOrEmpty(sessionCookie))
{
var cookie = HttpContext.Current.Response.Cookies[sessionCookie];
if (cookie != null)
{
cookie.Expires = DateTime.UtcNow.AddDays(-1);
}
}
}
}
这段代码将在每个请求结束时检查会话Cookie并将其过期。这样,当用户注销或退出时,会话Cookie将被清除。
请注意,这只是一种解决方法,可以根据您的特定需求进行调整。