Problemer med cookies ved logout
Hej med jer!Jeg har problemer med, at Chrome og Firefox ikke sletter cookies korrekt, når jeg logger ud. Det virker fint i IE...
Kode til cookies ved login:
public static void SetCookie(string userID)
{
if (HttpContext.Current.Session != null)
{
HttpContext.Current.Session["loginuser"] = userID;
}
HttpContext.Current.Response.Cookies["login"]["userid"] = userID;
HttpContext.Current.Response.Cookies["login"].Domain = ".mitdomain.dk";
HttpContext.Current.Response.Cookies["login"].Expires = DateTime.Now.AddDays(365);
}
Kode til at logge ud:
private void KillCookie()
{
if (Request.Cookies["login"] != null && !string.IsNullOrEmpty(Request.Cookies["login"].Value))
{
Session.Clear();
Session.Abandon();
Response.Cookies["login"].Value = null;
Response.Cookies["login"].Expires = DateTime.Now.AddDays(-1);
Response.Cookies.Remove("login");
UserHelper.SetCookie(null);
Response.Cookies.Set(new HttpCookie("login"));
Response.RedirectLocation = Request.RawUrl;
}
}
Det "sjove" er, at det hele virker, hvis bare jeg udkommenterer denne linje i login funktionen:
HttpContext.Current.Response.Cookies["login"].Domain = ".mitdomain.dk";
Er der nogen der kan se hvad jeg gør forkert?
Det må jo næsten være et eller andet med at jeg sætter min cookie til at fungere på subdomain, men det er en nødvendighed.